Destroy();
}
+int Zigbee::zbl_get_mac(void)
+{
+ int i =0;
+ char value;
+ GVariant *message = NULL;
+ GVariantIter *iter = NULL;
+ int error = ZIGBEE_ERROR_NONE;
+ ieee_addr addr64;
+
+ GLOGD("zbl_get_mac()");
+
+ message = InvokeMethod(ZIGBEE_SERVER_NAME,
+ ZIGBEE_CONTROL_OBJECT_PATH,
+ ZIGBEE_SERVICE_INTERFACE,
+ "get_mac",
+ NULL,
+ &error);
+
+ if (message) {
+ g_variant_get(message, "(ia(y))", &error,
+ &iter);
+ GLOGD("ret = [0x%x]", error);
+ if (iter) {
+ while (g_variant_iter_loop(iter, "(y)", &value)) {
+ addr64[i] = value;
+ i++;
+ }
+ g_variant_iter_free(iter);
+ }
+ GLOGD("addr64 = 0x%02X:0x%02X:0x%02X:0x%02X:0x%02X:0x%02X:0x%02X:0x%02X",
+ addr64[0], addr64[1], addr64[2], addr64[3], addr64[4], addr64[5],
+ addr64[6], addr64[7]);
+ g_variant_unref(message);
+ }
+
+ return error;
+}
+
+int Zigbee::zbl_get_network_info(void)
+{
+ GVariant *message = NULL;
+ GVariantIter *iter = NULL;
+ int error = ZIGBEE_ERROR_NONE;
+
+ nwk_addr _nodeid;
+ nwk_addr _panid;
+ unsigned char _radio_channel;
+ unsigned char _radio_tx_power;
+
+ GLOGD("zbl_get_network_info()");
+
+ message = InvokeMethod(ZIGBEE_SERVER_NAME,
+ ZIGBEE_CONTROL_OBJECT_PATH,
+ ZIGBEE_SERVICE_INTERFACE,
+ "get_network_info",
+ NULL,
+ &error);
+
+ if (message) {
+ g_variant_get(message, "(ia(y)qqyy)", &error, &iter,
+ &_nodeid, &_panid, &_radio_channel, &_radio_tx_power);
+ GLOGD("ret = [0x%x]", error);
+ g_variant_iter_free(iter);
+ g_variant_unref(message);
+ }
+
+ return error;
+}
+
+int Zigbee::zbl_permit_join(int duration, bool broadcast)
+{
+ int error = ZIGBEE_ERROR_NONE;
+ GVariant *message;
+
+ GLOGD("zbl_permit_join()");
+
+ message = InvokeMethod(ZIGBEE_SERVER_NAME,
+ ZIGBEE_CONTROL_OBJECT_PATH,
+ ZIGBEE_SERVICE_INTERFACE,
+ "permit_join",
+ g_variant_new("(ib)", duration, broadcast),
+ &error);
+
+ if (message) {
+ g_variant_get(message, "(i)", &error);
+ GLOGD("ret = 0x%x", error);
+ g_variant_unref(message);
+ }
+
+ return error;
+}
+
+int Zigbee::zbl_leave_network(void)
+{
+ int error = ZIGBEE_ERROR_NONE;
+ GVariant *message;
+
+ GLOGD("zbl_leave_network()");
+
+ message = InvokeMethod(ZIGBEE_SERVER_NAME,
+ ZIGBEE_CONTROL_OBJECT_PATH,
+ ZIGBEE_SERVICE_INTERFACE,
+ "leave_network", NULL, &error);
+
+ if (message) {
+ g_variant_get(message, "(i)", &error);
+ GLOGD("ret = 0x%x", error);
+ g_variant_unref(message);
+ }
+
+ return error;
+}
+
+int Zigbee::zbl_form_network(void)
+{
+ int error = ZIGBEE_ERROR_NONE;
+ GVariant *message;
+
+ GLOGD("zbl_form_network()");
+
+ message = InvokeMethod(ZIGBEE_SERVER_NAME,
+ ZIGBEE_CONTROL_OBJECT_PATH,
+ ZIGBEE_SERVICE_INTERFACE,
+ "form_network", NULL, &error);
+
+ if (message) {
+ g_variant_get(message, "(i)", &error);
+ GLOGD("ret = 0x%x", error);
+ g_variant_unref(message);
+ }
+
+ return error;
+}
+
int Zigbee::zbl_enable(void)
{
int error = ZIGBEE_ERROR_NONE;
EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
}
+/*
+@testcase FormNetwork_p
+@since_tizen 5.0
+@author SRID(abhishek.s94)
+@reviewer HQ(saerome.kim)
+@type auto
+@description Positive, Form network using zigbee-manager
+@apicovered "form_network" method on "org.tizen.zigbee.service" interface
+@passcase when zbl_form_network returns ZIGBEE_ERROR_NONE
+@failcase when zbl_form_network does not return ZIGBEE_ERROR_NONE
+@precondition __check_feature_supported must return true for zigbee feature
+@postcondition None
+*/
+TEST(ZigbeeManager, FormNetwork_p)
+{
+ int ret = ZIGBEE_ERROR_NONE;
+ Zigbee zb_mgr;
+
+ if (ZIGBEE_ERROR_NONE == __check_feature_supported()) {
+ ret = zb_mgr.zbl_form_network();
+ }
+ EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
+}
+
+/*
+@testcase GetNetworkInfo_p
+@since_tizen 5.0
+@author SRID(abhishek.s94)
+@reviewer HQ(saerome.kim)
+@type auto
+@description Positive, get network info using zigbee-manager
+@apicovered "get_network_info" method on "org.tizen.zigbee.service" interface
+@passcase when zbl_get_network_info returns ZIGBEE_ERROR_NONE
+@failcase when zbl_get_network_info does not return ZIGBEE_ERROR_NONE
+@precondition __check_feature_supported must return true for zigbee feature
+@postcondition None
+*/
+TEST(ZigbeeManager, GetNetworkInfo_p)
+{
+ int ret = ZIGBEE_ERROR_NONE;
+ Zigbee zb_mgr;
+
+ if (ZIGBEE_ERROR_NONE == __check_feature_supported()) {
+ ret = zb_mgr.zbl_get_network_info();
+ }
+ EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
+}
+
+/*
+@testcase GetMac_p
+@since_tizen 5.0
+@author SRID(abhishek.s94)
+@reviewer HQ(saerome.kim)
+@type auto
+@description Positive, get mac address using zigbee-manager
+@apicovered "get_mac" method on "org.tizen.zigbee.service" interface
+@passcase when zbl_get_mac returns ZIGBEE_ERROR_NONE
+@failcase when zbl_get_mac does not return ZIGBEE_ERROR_NONE
+@precondition __check_feature_supported must return true for zigbee feature
+@postcondition None
+*/
+TEST(ZigbeeManager, GetMac_p)
+{
+ int ret = ZIGBEE_ERROR_NONE;
+ Zigbee zb_mgr;
+
+ if (ZIGBEE_ERROR_NONE == __check_feature_supported()) {
+ ret = zb_mgr.zbl_get_mac();
+ }
+ EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
+}
+
+/*
+@testcase PermitJoin_p
+@since_tizen 5.0
+@author SRID(abhishek.s94)
+@reviewer HQ(saerome.kim)
+@type auto
+@description Positive, Allow permit join using zigbee-manager
+@apicovered "permit_join" method on "org.tizen.zigbee.service" interface
+@passcase when zbl_permit_join returns ZIGBEE_ERROR_NONE
+@failcase when zbl_permit_join does not return ZIGBEE_ERROR_NONE
+@precondition __check_feature_supported must return true for zigbee feature
+@postcondition None
+*/
+TEST(ZigbeeManager, PermitJoin_p)
+{
+ int ret = ZIGBEE_ERROR_NONE;
+ Zigbee zb_mgr;
+
+ if (ZIGBEE_ERROR_NONE == __check_feature_supported()) {
+ ret = zb_mgr.zbl_permit_join(1, true);
+ }
+ EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
+}
+
+/*
+@testcase LeaveNetwork_p
+@since_tizen 5.0
+@author SRID(abhishek.s94)
+@reviewer HQ(saerome.kim)
+@type auto
+@description Positive, Leave network using zigbee-manager
+@apicovered "leave_network" method on "org.tizen.zigbee.service" interface
+@passcase when zbl_leave_network returns ZIGBEE_ERROR_NONE
+@failcase when zbl_leave_network does not return ZIGBEE_ERROR_NONE
+@precondition __check_feature_supported must return true for zigbee feature
+@postcondition None
+*/
+TEST(ZigbeeManager, LeaveNetwork_p)
+{
+ int ret = ZIGBEE_ERROR_NONE;
+ Zigbee zb_mgr;
+
+ if (ZIGBEE_ERROR_NONE == __check_feature_supported()) {
+ ret = zb_mgr.zbl_leave_network();
+ }
+ EXPECT_EQ(ZIGBEE_ERROR_NONE, ret);
+}
+
/*
@testcase Disable_p
@since_tizen 5.0