X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=tests%2Fsst_gtest_vconf.cpp;h=56a8fb7e3a71076d4e78107524a28fc93273e7a0;hb=a749308f60e860e33779a07db450319327089a70;hp=67c80aed1bb36089cdb231fb7362f0c4a848dabc;hpb=ece027cc235ea61694a59247daff1a44e8bfdfdd;p=platform%2Fcore%2Fapi%2Fsystem-settings.git diff --git a/tests/sst_gtest_vconf.cpp b/tests/sst_gtest_vconf.cpp index 67c80ae..56a8fb7 100644 --- a/tests/sst_gtest_vconf.cpp +++ b/tests/sst_gtest_vconf.cpp @@ -17,8 +17,10 @@ #include #include #include +#include #include "system_settings.h" +#include "mocks/sstt_mock.h" extern "C" { #include "sst.h" @@ -41,10 +43,10 @@ protected: static gboolean checkCallbackIdle(gpointer data) { - bool *oldVal = (bool*)data; - int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal); + bool *val = (bool*)data; + int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, val); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, !(*oldVal)); + ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, !(*val)); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); return G_SOURCE_REMOVE; @@ -87,28 +89,50 @@ TEST(SstVconfTest, getValueInt) sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 60, 0); ret = sst_vconf_get_int(iface, &val); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); } +TEST(SstVconfTest, getValueIntERR) +{ + int val; + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &iface); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 60, -1); + ret = sst_vconf_get_int(iface, &val); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); +} + TEST(SstVconfTest, setValueInt) { - int oldVal; int getVal; int setVal = 60; sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = sst_vconf_get_int(iface, &oldVal); - EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 0); ret = sst_vconf_set_int(iface, setVal); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_get_int(iface, &getVal);; EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); EXPECT_EQ(setVal, getVal); - ret = sst_vconf_set_int(iface, oldVal); +} + +TEST(SstVconfTest, setValueIntERR) +{ + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, -1); + ret = sst_vconf_set_int(iface, 60); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); } TEST(SstVconfTest, getValueBool) @@ -117,10 +141,24 @@ TEST(SstVconfTest, getValueBool) sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0); ret = sst_vconf_get_bool(iface, &val); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); } +TEST(SstVconfTest, getValueBoolERR) +{ + bool val; + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, -1); + ret = sst_vconf_get_bool(iface, &val); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); +} + TEST(SstVconfTest, setValueBool) { bool getVal; @@ -128,6 +166,8 @@ TEST(SstVconfTest, setValueBool) sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, 0); ret = sst_vconf_get_bool(iface, &getVal); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); setVal = !getVal; @@ -140,61 +180,111 @@ TEST(SstVconfTest, setValueBool) EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); } +TEST(SstVconfTest, setValueBoolERR) +{ + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, -1); + ret = sst_vconf_set_bool(iface, false); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); +} + TEST(SstVconfTest, getValueString) { char *val; sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", 0); ret = sst_vconf_get_str(iface, &val); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); free(val); + + sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT); +} + +TEST(SstVconfTest, getValueStringERR) +{ + char *val; + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &iface); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", -1); + ret = sst_vconf_get_str(iface, &val); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); + + sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT); } TEST(SstVconfTest, setValueString) { - char *oldVal; char *getVal; const char *setVal = "ko_KR"; sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = sst_vconf_get_str(iface, &oldVal); - EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, 0); ret = sst_vconf_set_str(iface, setVal); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_get_str(iface, &getVal); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); EXPECT_STREQ(setVal, getVal); free(getVal); - ret = sst_vconf_set_str(iface, oldVal); - EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - free(oldVal); + + sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT); } TEST_F(SstVconfCBTest, setUnsetChangedCallback) { - bool oldVal; + bool val; sst_interface *iface; int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + + sstm_vconf_notify_key_changed_setup(true); + sstm_vconf_ignore_key_changed_setup(true); + sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0); + ret = sst_vconf_set_cb(iface, changedCallback, NULL); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); resultCB = -1; - g_idle_add(checkCallbackIdle, &oldVal); + g_idle_add(checkCallbackIdle, &val); g_main_loop_run(loop); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, resultCB); ret = sst_vconf_unset_cb(iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal); +} + +TEST_F(SstVconfCBTest, setUnsetChangedCallbackERR) +{ + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + ret = sst_vconf_set_cb(iface, NULL, NULL); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret); + + sstm_vconf_notify_key_changed_setup(false); + ret = sst_vconf_set_cb(iface, changedCallback, NULL); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); + sstm_vconf_ignore_key_changed_setup(false); + ret = sst_vconf_unset_cb(iface); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret); } TEST_F(SstVconfCBTest, addDeleteChangedCallback) { - bool oldVal; + bool val; sst_interface *iface; + + sstm_vconf_notify_key_changed_setup(true); + sstm_vconf_ignore_key_changed_setup(true); + sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0); + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_add_multi_cb(iface, changedMultiCallback1, NULL); @@ -202,22 +292,41 @@ TEST_F(SstVconfCBTest, addDeleteChangedCallback) ret = sst_vconf_add_multi_cb(iface, changedMultiCallback2, NULL); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); resultCB = 0; - g_idle_add(checkCallbackIdle, &oldVal); + g_idle_add(checkCallbackIdle, &val); g_main_loop_run(loop); EXPECT_EQ(0x11, resultCB); ret = sst_vconf_del_multi_cb(iface, changedMultiCallback1); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_del_multi_cb(iface, changedMultiCallback2); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal); +} + +TEST_F(SstVconfCBTest, addDeleteChangedCallbackERR) +{ + sst_interface *iface; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + ret = sst_vconf_add_multi_cb(iface, NULL, NULL); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret); + + sstm_vconf_notify_key_changed_setup(false); + ret = sst_vconf_add_multi_cb(iface, changedCallback, NULL); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); + sstm_vconf_ignore_key_changed_setup(false); + ret = sst_vconf_del_multi_cb(iface, changedCallback); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret); } TEST_F(SstVconfCBTest, subscribeUnsubscribe) { - bool oldVal; + bool val; sst_interface *iface; system_settings_cb_id cb[2]; + + sstm_vconf_notify_key_changed_setup(true); + sstm_vconf_ignore_key_changed_setup(true); + sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0); + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_subscribe(iface, changedMultiCallback1, NULL, &cb[0]); @@ -225,13 +334,28 @@ TEST_F(SstVconfCBTest, subscribeUnsubscribe) ret = sst_vconf_subscribe(iface, changedMultiCallback2, NULL, &cb[1]); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); resultCB = 0; - g_idle_add(checkCallbackIdle, &oldVal); + g_idle_add(checkCallbackIdle, &val); g_main_loop_run(loop); EXPECT_EQ(0x11, resultCB); ret = sst_vconf_unsubscribe(iface, cb[0]); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); ret = sst_vconf_unsubscribe(iface, cb[1]); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); - ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal); +} + +TEST_F(SstVconfCBTest, subscribeUnsubscribeERR) +{ + sst_interface *iface; + system_settings_cb_id cb; + int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &iface); EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret); + ret = sst_vconf_subscribe(iface, NULL, NULL, &cb); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret); + + sstm_vconf_notify_key_changed_setup(false); + ret = sst_vconf_subscribe(iface, changedCallback, NULL, &cb); + EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret); + sstm_vconf_ignore_key_changed_setup(false); + ret = sst_vconf_unsubscribe(iface, cb); + changedCallback(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, NULL); }