ADD_LIBRARY(${MOCK_LIB} SHARED ${MOCK_SRCS})
SET(SSTT_GTEST "sst-unit-test")
-SET(SSTT_GTEST_SRC sst_gtest_api.cpp
- sst_gtest_font.cpp
- sst_gtest_misc.cpp
- sst_gtest_screen.cpp
- sst_gtest_sound.cpp
- sst_gtest_time_N_locale.cpp
- sst_gtest_interface.cpp
- sst_gtest_vconf.cpp)
+FILE(GLOB SSTT_GTEST_SRC sst_gtest_normal_*.cpp)
ADD_EXECUTABLE(${SSTT_GTEST} ${SSTT_COMMON_SRC} ${SSTT_GTEST_SRC})
TARGET_LINK_LIBRARIES(${SSTT_GTEST} ${MOCK_LIB} ${gtest_pkgs_LIBRARIES} ${pkgs_LIBRARIES} dl)
INSTALL(TARGETS ${SSTT_GTEST} DESTINATION ${TEST_INSTALL_DIR})
void sstm_vconf_set_int_setup(const char *key, int ret);
void sstm_vconf_set_bool_setup(const char *key, int ret);
void sstm_vconf_set_str_setup(const char *key, int ret);
-void sstm_vconf_clear_str(const char *key);
void sstm_vconf_notify_key_changed_setup(bool enable);
void sstm_vconf_ignore_key_changed_setup(bool enable);
};
typedef struct {
+ string val;
int getRet;
int setRet;
-} retData;
-
-typedef struct {
- char *val;
- retData ret;
} strData;
typedef struct {
int val;
- retData ret;
+ int getRet;
+ int setRet;
} intData;
typedef struct _keynode_t {
typedef void(*vconf_callback_fn) (keynode_t *node, void *user_data);
-std::map<string, strData> vconfStrMap;
-std::map<string, intData> vconfIntMap;
-std::map<string, intData> vconfBoolMap;
+static std::map<string, strData> vconfStrMap;
+static std::map<string, intData> vconfIntMap;
+static std::map<string, intData> vconfBoolMap;
static bool sstm_vconf_notify_key_changed_enable = true;
static bool sstm_vconf_ignore_key_changed_enable = true;
{
intData data = {
.val = val,
- .ret = {
- .getRet = ret,
- .setRet = 0
- }
+ .getRet = ret,
+ .setRet = 0
};
vconfIntMap[key] = data;
- DBG("get int setup key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].ret.getRet);
+ DBG("get int setup key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].getRet);
}
API void sstm_vconf_get_bool_setup(const char *key, bool val, int ret)
{
intData data = {
.val = val,
- .ret = {
- .getRet = ret,
- .setRet = 0
- }
+ .getRet = ret,
+ .setRet = 0
};
vconfBoolMap[key] = data;
- DBG("get bool setup key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].ret.getRet);
+ DBG("get bool setup key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].getRet);
}
API void sstm_vconf_get_str_setup(const char *key, const char *val, int ret)
{
strData data = {
- .val = strdup(val),
- .ret = {
- .getRet = ret,
- .setRet = 0
- }
+ .val = val,
+ .getRet = ret,
+ .setRet = 0
};
vconfStrMap[key] = data;
- DBG("get str setup key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val, vconfStrMap[key].ret.getRet);
+ DBG("get str setup key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val.c_str(), vconfStrMap[key].getRet);
}
API void sstm_vconf_set_int_setup(const char *key, int ret)
{
intData data = {
.val = 0,
- .ret = {
- .getRet = 0,
- .setRet = ret
- }
+ .getRet = 0,
+ .setRet = ret
};
vconfIntMap[key] = data;
- DBG("set int setup key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].ret.setRet);
+ DBG("set int setup key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].setRet);
}
API void sstm_vconf_set_bool_setup(const char *key, int ret)
{
intData data = {
.val = 0,
- .ret = {
- .getRet = 0,
- .setRet = ret
- }
+ .getRet = 0,
+ .setRet = ret
};
vconfBoolMap[key] = data;
- DBG("set bool setup key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].ret.setRet);
+ DBG("set bool setup key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].setRet);
}
API void sstm_vconf_set_str_setup(const char *key, int ret)
{
strData data = {
- .val = NULL,
- .ret = {
- .getRet = 0,
- .setRet = ret
- }
+ .val = "",
+ .getRet = 0,
+ .setRet = ret
};
vconfStrMap[key] = data;
- DBG("set str setup key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val, vconfStrMap[key].ret.setRet);
+ DBG("set str setup key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val.c_str(), vconfStrMap[key].setRet);
}
API void sstm_vconf_clear_str(const char *key)
{
- free(vconfStrMap[key].val);
- vconfStrMap[key].val = NULL;
}
API void sstm_vconf_notify_key_changed_setup(bool enable)
node.type = type;
switch (node.type) {
case VCONF_TYPE_STRING:
- node.value.s = strdup((char*)val);
+ node.value.s = (char*)val;
break;
case VCONF_TYPE_INT:
node.value.i = *(int*)val;
return;
}
cb(&node, user_data);
- if (VCONF_TYPE_STRING == node.type)
- free(node.value.s);
}
}
}
API int vconf_set_int(const char *key, const int val)
{
vconfIntMap[key].val = val;
- DBG("set int key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].ret.setRet);
+ DBG("set int key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].setRet);
checkNotifyCallBack(key, VCONF_TYPE_INT, &vconfIntMap[key].val);
- return vconfIntMap[key].ret.setRet;
+ return vconfIntMap[key].setRet;
}
API int vconf_set_bool(const char *key, const int val)
{
vconfBoolMap[key].val = val;
- DBG("set bool key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].ret.setRet);
+ DBG("set bool key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].setRet);
checkNotifyCallBack(key, VCONF_TYPE_BOOL, &vconfBoolMap[key].val);
- return vconfBoolMap[key].ret.setRet;
+ return vconfBoolMap[key].setRet;
}
API int vconf_set_str(const char *key, const char *val)
{
- free(vconfStrMap[key].val);
- vconfStrMap[key].val = strdup(val);
- checkNotifyCallBack(key, VCONF_TYPE_STRING, vconfStrMap[key].val);
- return vconfStrMap[key].ret.setRet;
+ vconfStrMap[key].val = val;
+ checkNotifyCallBack(key, VCONF_TYPE_STRING, (void*)vconfStrMap[key].val.c_str());
+ return vconfStrMap[key].setRet;
}
API char* vconf_get_str(const char *key)
{
RETV_IF(NULL == key, NULL);
- DBG("get key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val, vconfStrMap[key].ret.getRet);
- if (VCONF_OK == vconfStrMap[key].ret.getRet)
- return strdup(vconfStrMap[key].val);
+ DBG("get key(%s) val(%s) ret(%d)", key, vconfStrMap[key].val.c_str(), vconfStrMap[key].getRet);
+ if (VCONF_OK == vconfStrMap[key].getRet)
+ return strdup(vconfStrMap[key].val.c_str());
else
return NULL;
}
RETV_IF(NULL == key, VCONF_ERROR);
RETV_IF(NULL == val, VCONF_ERROR);
- DBG("get key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].ret.getRet);
+ DBG("get key(%s) val(%d) ret(%d)", key, vconfIntMap[key].val, vconfIntMap[key].getRet);
*val = vconfIntMap[key].val;
- return vconfIntMap[key].ret.getRet;
+ return vconfIntMap[key].getRet;
}
API int vconf_get_bool(const char *key, int *val)
RETV_IF(NULL == key, VCONF_ERROR);
RETV_IF(NULL == val, VCONF_ERROR);
- DBG("get bool key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].ret.getRet);
+ DBG("get bool key(%s) val(%d) ret(%d)", key, vconfBoolMap[key].val, vconfBoolMap[key].getRet);
*val = vconfBoolMap[key].val;
- return vconfBoolMap[key].ret.getRet;
+ return vconfBoolMap[key].getRet;
}
API int vconf_notify_key_changed(const char *in_key, vconf_callback_fn cb,
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-int system_settings_subscribe_changes(system_settings_key_e key,
- system_settings_changed_cb callback,
- void *user_data, system_settings_cb_id *id);
-int system_settings_unsubscribe_changes(system_settings_key_e key,
- system_settings_cb_id id);
-}
-
-#define SST_DEPRECATED_KEY ((int)SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED + 1)
-
-class SstApiCBTest : public ::testing::Test {
-protected:
- void SetUp() override
- {
- loop = g_main_loop_new(NULL, FALSE);
- }
-
- void TearDown() override
- {
- g_main_loop_unref(loop);
- loop = NULL;
- }
-
- static gboolean checkCallbackIdle(gpointer data)
- {
- bool *oldVal = (bool*)data;
- int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, !(*oldVal));
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- return G_SOURCE_REMOVE;
- }
-
- static void changedMultiCallback1(system_settings_key_e key, void *user_data)
- {
- INFO("changedMultiCallback1 called!");
- resultCB |= 0x1;
- if (0x11 == resultCB)
- g_main_loop_quit(loop);
- }
-
- static void changedMultiCallback2(system_settings_key_e key, void *user_data)
- {
- INFO("changedMultiCallback2 called!");
- resultCB |= 0x10;
- if (0x11 == resultCB)
- g_main_loop_quit(loop);
- }
-
- static void changedCallback(system_settings_key_e key, void *user_data)
- {
- INFO("Callback called!");
- resultCB = SYSTEM_SETTINGS_ERROR_NONE;
- g_main_loop_quit(loop);
- }
-
- static bool ringtoneListCallback(int index, const char *data, void *user_data)
- {
- INFO("filename(%s)", data);
- int *ringtone_num = (int*)user_data;
- *ringtone_num += 1;
- return true;
- }
-
- static gboolean checkRingtoneIdle(gpointer data)
- {
- int ringtone_num = 0;
- int cur_cnt = 0;
- int ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &cur_cnt);
-
- for (int i = 0; i < ringtoneFilesCnt; i++) {
- ret = system_settings_add_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- }
- ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &ringtone_num);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- for (int i = ringtoneFilesCnt - 1; i >= 0; i--) {
- ret = system_settings_delete_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- }
- EXPECT_EQ(ringtone_num - cur_cnt, ringtoneFilesCnt);
- g_main_loop_quit(loop);
- return G_SOURCE_REMOVE;
- }
-
- static int resultCB;
- static GMainLoop *loop;
- static const char *ringtoneFiles[];
- static int ringtoneFilesCnt;
-};
-
-const char *SstApiCBTest::ringtoneFiles[] = {
- SYS_SETTINGS_TEST_DIR"/Over the horizon.mp3",
- SYS_SETTINGS_TEST_DIR"/big_buck_bunny.mp3",
- SYS_SETTINGS_TEST_DIR"/daliTestVideo.mp3",
- SYS_SETTINGS_TEST_DIR"/sound_5.mp3",
- SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3"
-};
-int SstApiCBTest::ringtoneFilesCnt = sizeof(ringtoneFiles)/sizeof(const char*);
-GMainLoop *SstApiCBTest::loop = NULL;
-int SstApiCBTest::resultCB = 0;
-
-TEST(SstApiTest, getValueInt)
-{
- int val;
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 60, 0);
- int ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = system_settings_get_value_int((system_settings_key_e)SST_DEPRECATED_KEY, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0);
- ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-TEST(SstApiTest, setValueInt)
-{
- int getVal;
- int setVal = 60;
-
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 0);
- int ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(setVal, getVal);
-
- ret = system_settings_set_value_int((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_TIME_CHANGED, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
-}
-
-TEST(SstApiTest, getValueBool)
-{
- bool val;
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0);
- int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = system_settings_get_value_bool((system_settings_key_e)SST_DEPRECATED_KEY, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-TEST(SstApiTest, setValueBool)
-{
- bool getVal;
- bool setVal = false;
- sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, 0);
- int ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(setVal, getVal);
-
- ret = system_settings_set_value_bool((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_SOUND_LOCK, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
-}
-
-TEST(SstApiTest, getValueString)
-{
- char *val;
- sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", 0);
- int ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- ret = system_settings_get_value_string((system_settings_key_e)SST_DEPRECATED_KEY, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE_PKG_LIST, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST(SstApiTest, setValueString)
-{
- char *getVal;
- const char *setVal = "ko_KR";
- sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, 0);
- int ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
- free(getVal);
-
- ret = system_settings_set_value_string((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE_PKG_LIST, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST_F(SstApiCBTest, setUnsetChangedCallback)
-{
- bool oldVal;
-
- 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 = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- resultCB = -1;
- g_idle_add(checkCallbackIdle, &oldVal);
- g_main_loop_run(loop);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, resultCB);
- ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = system_settings_set_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedCallback, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_unset_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-TEST_F(SstApiCBTest, setUnsetChangedCallbackERR)
-{
- sstm_vconf_notify_key_changed_setup(false);
- int ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- sstm_vconf_ignore_key_changed_setup(false);
- ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
-}
-
-
-TEST_F(SstApiCBTest, addDeleteForeachValueString)
-{
- sstm_access_setup(true);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
- g_idle_add(checkRingtoneIdle, NULL);
- g_main_loop_run(loop);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST);
-}
-
-TEST_F(SstApiCBTest, ForeachValueString)
-{
- sstm_access_setup(true);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
-
- sstm_opendir_setup(false);
- int ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST);
- sstm_opendir_setup(true);
-}
-
-TEST_F(SstApiCBTest, addDeleteChangedCallback)
-{
- bool oldVal;
-
- 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 = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- resultCB = 0;
- g_idle_add(checkCallbackIdle, &oldVal);
- g_main_loop_run(loop);
- EXPECT_EQ(0x11, resultCB);
- ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = system_settings_add_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_remove_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-TEST_F(SstApiCBTest, addDeleteChangedCallbackERR)
-{
- sstm_vconf_notify_key_changed_setup(false);
- int ret = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- sstm_vconf_ignore_key_changed_setup(false);
- ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-
-TEST_F(SstApiCBTest, subUnsubscribeCallback)
-{
- bool oldVal;
- 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 = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1, NULL, &cb[0]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2, NULL, &cb[1]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- resultCB = 0;
- g_idle_add(checkCallbackIdle, &oldVal);
- g_main_loop_run(loop);
- EXPECT_EQ(0x11, resultCB);
- ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb[0]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb[1]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = system_settings_subscribe_changes((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1, NULL, &cb[0]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- ret = system_settings_unsubscribe_changes((system_settings_key_e)SST_DEPRECATED_KEY, cb[0]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-TEST_F(SstApiCBTest, subUnsubscribeCallbackERR)
-{
- system_settings_cb_id cb;
- sstm_vconf_notify_key_changed_setup(false);
- int ret = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL, &cb);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- sstm_vconf_ignore_key_changed_setup(false);
- ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_font.h"
-#include "sst_vconf.h"
-#include "sst_interface.h"
-}
-
-TEST(SstFontTest, getDefaultfontERR)
-{
- char *val;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_DEFAULT_FONT_TYPE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_dlopen_setup(false);
- ret = sst_font_get_default_type(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST(SstFontTest, setFontTypeERR)
-{
- const char *setVal = "BreezeSans";
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_dlopen_setup(false);
- ret = sst_font_set_type(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_dlopen_setup(true);
- sstm_eext_config_font_set_setup(false);
- ret = sst_font_set_type(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_xmlParseFile_setup(false);
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, 0, -1);
- ret = sst_font_set_type(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST(SstFontTest, setFontSizeERR)
-{
- sst_interface *iface;
-
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_SIZE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, -1);
- ret = sst_font_set_size(iface, SYSTEM_SETTINGS_FONT_SIZE_NORMAL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-TEST(SstFontTest, getDefaultfont)
-{
- char *val;
- sst_interface *iface;
-
- sstm_system_info_get_platform_bool_setup(true);
- sstm_dlopen_setup(true);
-
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_font_get_default_type(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-}
-
-TEST(SstFontTest, setFontType)
-{
- char *getVal = NULL;
- const char *eVal = "WrongFontName";
- const char *setVal = "BreezeSans";
- sst_interface *iface;
-
- sstm_system_info_get_platform_bool_setup(true);
- sstm_dlopen_setup(true);
- sstm_xmlParseFile_setup(true);
- sstm_eext_config_font_set_setup(true);
-
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, 0);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, 0);
-
- ret = sst_font_set_type(iface, eVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- ret = sst_font_set_type(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);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME);
-}
-
-TEST(SstFontTest, setFontSize)
-{
- int fontSize[] = {
- SYSTEM_SETTINGS_FONT_SIZE_SMALL,
- SYSTEM_SETTINGS_FONT_SIZE_NORMAL,
- SYSTEM_SETTINGS_FONT_SIZE_LARGE,
- SYSTEM_SETTINGS_FONT_SIZE_HUGE,
- SYSTEM_SETTINGS_FONT_SIZE_GIANT
- };
- int fsCnt = sizeof(fontSize) / sizeof(fontSize[0]);
- int getVal;
- int setVal;
- sst_interface *iface;
-
- sstm_system_info_get_platform_bool_setup(true);
- sstm_dlopen_setup(true);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, "BreezeSans", 0);
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, 0);
-
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_SIZE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- for (int i = 0; i < fsCnt; i++) {
- setVal = fontSize[i];
- ret = sst_font_set_size(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);
- }
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst_interface.h"
-#include "sst.h"
-}
-
-#define SST_DEPRECATED_KEY ((int)SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED + 1)
-
-TEST(SstInterfaceTest, getInterfaceOk)
-{
- sst_interface *iface;
- int key = (int)SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE;
-
- sstm_system_info_get_platform_string_setup(true);
- sstm_system_info_get_platform_bool_setup(true);
-
- for ( ; key < (int)SYSTEM_SETTINGS_KEY_MAX; key++) {
- if (key == SST_DEPRECATED_KEY) {
- continue;
- }
- int ret = sst_get_interface((system_settings_key_e)key, &iface);
- EXPECT_TRUE((SYSTEM_SETTINGS_ERROR_NONE == ret) || (SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED == ret));
- }
-}
-
-TEST(SstInterfaceTest, getInterfaceERRInput)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MAX, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- ret = sst_get_interface((system_settings_key_e)SST_DEPRECATED_KEY, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_interface.h"
-#include "sst_misc.h"
-}
-
-TEST(SstMisc, fileExists)
-{
- sstm_access_setup(true);
- bool ret = sst_misc_file_exists(SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3");
- EXPECT_EQ(true, ret);
-
- ret = sst_misc_file_exists("file.not_exist");
- EXPECT_EQ(false, ret);
-}
-
-TEST(SstMisc, getWifiQSNoti)
-{
- bool val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_NETWORK_WIFI_NOTIFICATION, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_WIFI_ENABLE_QS, VCONFKEY_WIFI_QS_ENABLE, 0);
- ret = sst_misc_get_wifi_QS_noti(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
-
-TEST(SstMisc, getWifiQSNotiERR)
-{
- bool val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_NETWORK_WIFI_NOTIFICATION, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- sstm_vconf_get_int_setup(VCONFKEY_WIFI_ENABLE_QS, VCONFKEY_WIFI_QS_ENABLE, -1);
- ret = sst_misc_get_wifi_QS_noti(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST(SstMisc, getAdsID)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 1, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_AD_ID, "00000000-0000-0000-000000000000", 0);
- ret = sst_misc_get_ads_id(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 1, 0);
- ret = vconf_set_int(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_misc_get_ads_id(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_AD_ID);
-}
-
-TEST(SstMisc, getAdsIDERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_AD_ID, "00000000-0000-0000-000000000000", -1);
-
- ret = sst_misc_get_ads_id(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_AD_ID);
-}
-
-TEST(SstMisc, setAdsID)
-{
- char *getVal = NULL;
- const char *setVal = "00000215-0156-0133-0034-000000000102";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_AD_ID, 0);
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0, 0);
-
- ret = sst_misc_set_ads_id(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_misc_get_ads_id(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_AD_ID);
-}
-
-TEST(SstMisc, setAdsIDERR)
-{
- const char *setVal = "00000215-0156-0133-0034-000000000102";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_AD_ID, -1);
- ret = sst_misc_set_ads_id(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_AD_ID);
-}
-
-TEST(SstMisc, getUltraDataSaveState)
-{
- int val;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 1, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "org.tizen.setting", 0);
- sstm_app_manager_get_app_id_setup(0);
- sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", 0);
-
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_UDSM_PKGID_LIST);
-}
-
-TEST(SstMisc, getUltraDataSaveStateERR)
-{
- int val;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 1, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "org.tizen.setting", 0);
- sstm_app_manager_get_app_id_setup(0);
- sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", 0);
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", -1);
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_app_manager_get_app_id_setup(-1);
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "NONE", -1);
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 0, -1);
- ret = sst_misc_get_uds_state(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_UDSM_PKGID_LIST);
-}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+int system_settings_subscribe_changes(system_settings_key_e key,
+ system_settings_changed_cb callback,
+ void *user_data, system_settings_cb_id *id);
+int system_settings_unsubscribe_changes(system_settings_key_e key,
+ system_settings_cb_id id);
+}
+
+#define SST_DEPRECATED_KEY ((int)SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED + 1)
+
+class SstApiCBTest : public ::testing::Test {
+protected:
+ void SetUp() override
+ {
+ loop = g_main_loop_new(NULL, FALSE);
+ }
+
+ void TearDown() override
+ {
+ g_main_loop_unref(loop);
+ loop = NULL;
+ }
+
+ static gboolean checkCallbackIdle(gpointer data)
+ {
+ bool *oldVal = (bool*)data;
+ int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, !(*oldVal));
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ return G_SOURCE_REMOVE;
+ }
+
+ static void changedMultiCallback1(system_settings_key_e key, void *user_data)
+ {
+ INFO("changedMultiCallback1 called!");
+ resultCB |= 0x1;
+ if (0x11 == resultCB)
+ g_main_loop_quit(loop);
+ }
+
+ static void changedMultiCallback2(system_settings_key_e key, void *user_data)
+ {
+ INFO("changedMultiCallback2 called!");
+ resultCB |= 0x10;
+ if (0x11 == resultCB)
+ g_main_loop_quit(loop);
+ }
+
+ static void changedCallback(system_settings_key_e key, void *user_data)
+ {
+ INFO("Callback called!");
+ resultCB = SYSTEM_SETTINGS_ERROR_NONE;
+ g_main_loop_quit(loop);
+ }
+
+ static bool ringtoneListCallback(int index, const char *data, void *user_data)
+ {
+ INFO("filename(%s)", data);
+ int *ringtone_num = (int*)user_data;
+ *ringtone_num += 1;
+ return true;
+ }
+
+ static gboolean checkRingtoneIdle(gpointer data)
+ {
+ int ringtone_num = 0;
+ int cur_cnt = 0;
+ int ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &cur_cnt);
+
+ for (int i = 0; i < ringtoneFilesCnt; i++) {
+ ret = system_settings_add_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ }
+ ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &ringtone_num);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ for (int i = ringtoneFilesCnt - 1; i >= 0; i--) {
+ ret = system_settings_delete_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ }
+ EXPECT_EQ(ringtone_num - cur_cnt, ringtoneFilesCnt);
+ g_main_loop_quit(loop);
+ return G_SOURCE_REMOVE;
+ }
+
+ static int resultCB;
+ static GMainLoop *loop;
+ static const char *ringtoneFiles[];
+ static int ringtoneFilesCnt;
+};
+
+const char *SstApiCBTest::ringtoneFiles[] = {
+ SYS_SETTINGS_TEST_DIR"/Over the horizon.mp3",
+ SYS_SETTINGS_TEST_DIR"/big_buck_bunny.mp3",
+ SYS_SETTINGS_TEST_DIR"/daliTestVideo.mp3",
+ SYS_SETTINGS_TEST_DIR"/sound_5.mp3",
+ SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3"
+};
+int SstApiCBTest::ringtoneFilesCnt = sizeof(ringtoneFiles)/sizeof(const char*);
+GMainLoop *SstApiCBTest::loop = NULL;
+int SstApiCBTest::resultCB = 0;
+
+TEST(SstApiTest, getValueInt)
+{
+ int val;
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 60, 0);
+ int ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = system_settings_get_value_int((system_settings_key_e)SST_DEPRECATED_KEY, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0);
+ ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST(SstApiTest, setValueInt)
+{
+ int getVal;
+ int setVal = 60;
+
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL, 0);
+ int ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(setVal, getVal);
+
+ ret = system_settings_set_value_int((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_int(SYSTEM_SETTINGS_KEY_TIME_CHANGED, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
+}
+
+TEST(SstApiTest, getValueBool)
+{
+ bool val;
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, false, 0);
+ int ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = system_settings_get_value_bool((system_settings_key_e)SST_DEPRECATED_KEY, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST(SstApiTest, setValueBool)
+{
+ bool getVal;
+ bool setVal = false;
+ sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_MOTION_ACTIVATION, 0);
+ int ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(setVal, getVal);
+
+ ret = system_settings_set_value_bool((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_SOUND_LOCK, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
+}
+
+TEST(SstApiTest, getValueString)
+{
+ char *val;
+ sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", 0);
+ int ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+
+ ret = system_settings_get_value_string((system_settings_key_e)SST_DEPRECATED_KEY, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE_PKG_LIST, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
+}
+
+TEST(SstApiTest, setValueString)
+{
+ char *getVal;
+ const char *setVal = "ko_KR";
+ sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, 0);
+ int ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+ free(getVal);
+
+ ret = system_settings_set_value_string((system_settings_key_e)SST_DEPRECATED_KEY, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_SCREEN_BACKLIGHT_TIME, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE_PKG_LIST, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED, ret);
+}
+
+TEST_F(SstApiCBTest, setUnsetChangedCallback)
+{
+ bool oldVal;
+
+ 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 = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ resultCB = -1;
+ g_idle_add(checkCallbackIdle, &oldVal);
+ g_main_loop_run(loop);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, resultCB);
+ ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = system_settings_set_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedCallback, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_unset_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST_F(SstApiCBTest, setUnsetChangedCallbackERR)
+{
+ sstm_vconf_notify_key_changed_setup(false);
+ int ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ sstm_vconf_ignore_key_changed_setup(false);
+ ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+}
+
+
+TEST_F(SstApiCBTest, addDeleteForeachValueString)
+{
+ sstm_access_setup(true);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
+ g_idle_add(checkRingtoneIdle, NULL);
+ g_main_loop_run(loop);
+}
+
+TEST_F(SstApiCBTest, ForeachValueString)
+{
+ sstm_access_setup(true);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
+
+ sstm_opendir_setup(false);
+ int ret = system_settings_foreach_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ sstm_opendir_setup(true);
+}
+
+TEST_F(SstApiCBTest, addDeleteChangedCallback)
+{
+ bool oldVal;
+
+ 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 = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ resultCB = 0;
+ g_idle_add(checkCallbackIdle, &oldVal);
+ g_main_loop_run(loop);
+ EXPECT_EQ(0x11, resultCB);
+ ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = system_settings_add_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_remove_changed_cb((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST_F(SstApiCBTest, addDeleteChangedCallbackERR)
+{
+ sstm_vconf_notify_key_changed_setup(false);
+ int ret = system_settings_add_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ sstm_vconf_ignore_key_changed_setup(false);
+ ret = system_settings_remove_changed_cb(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+
+TEST_F(SstApiCBTest, subUnsubscribeCallback)
+{
+ bool oldVal;
+ 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 = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback1, NULL, &cb[0]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedMultiCallback2, NULL, &cb[1]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ resultCB = 0;
+ g_idle_add(checkCallbackIdle, &oldVal);
+ g_main_loop_run(loop);
+ EXPECT_EQ(0x11, resultCB);
+ ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb[0]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb[1]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, oldVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = system_settings_subscribe_changes((system_settings_key_e)SST_DEPRECATED_KEY, changedMultiCallback1, NULL, &cb[0]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ ret = system_settings_unsubscribe_changes((system_settings_key_e)SST_DEPRECATED_KEY, cb[0]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST_F(SstApiCBTest, subUnsubscribeCallbackERR)
+{
+ system_settings_cb_id cb;
+ sstm_vconf_notify_key_changed_setup(false);
+ int ret = system_settings_subscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, changedCallback, NULL, &cb);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ sstm_vconf_ignore_key_changed_setup(false);
+ ret = system_settings_unsubscribe_changes(SYSTEM_SETTINGS_KEY_MOTION_ACTIVATION, cb);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_font.h"
+#include "sst_vconf.h"
+#include "sst_interface.h"
+}
+
+TEST(SstFontTest, getDefaultfontERR)
+{
+ char *val;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_DEFAULT_FONT_TYPE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_dlopen_setup(false);
+ ret = sst_font_get_default_type(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstFontTest, setFontTypeERR)
+{
+ const char *setVal = "BreezeSans";
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_dlopen_setup(false);
+ ret = sst_font_set_type(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_dlopen_setup(true);
+ sstm_eext_config_font_set_setup(false);
+ ret = sst_font_set_type(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_xmlParseFile_setup(false);
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, 0, -1);
+ ret = sst_font_set_type(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstFontTest, setFontSizeERR)
+{
+ sst_interface *iface;
+
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_SIZE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, -1);
+ ret = sst_font_set_size(iface, SYSTEM_SETTINGS_FONT_SIZE_NORMAL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+TEST(SstFontTest, getDefaultfont)
+{
+ char *val;
+ sst_interface *iface;
+
+ sstm_system_info_get_platform_bool_setup(true);
+ sstm_dlopen_setup(true);
+
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_font_get_default_type(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstFontTest, setFontType)
+{
+ char *getVal = NULL;
+ const char *eVal = "WrongFontName";
+ const char *setVal = "BreezeSans";
+ sst_interface *iface;
+
+ sstm_system_info_get_platform_bool_setup(true);
+ sstm_dlopen_setup(true);
+ sstm_xmlParseFile_setup(true);
+ sstm_eext_config_font_set_setup(true);
+
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_TYPE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, 0);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, 0);
+
+ ret = sst_font_set_type(iface, eVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ ret = sst_font_set_type(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);
+}
+
+TEST(SstFontTest, setFontSize)
+{
+ int fontSize[] = {
+ SYSTEM_SETTINGS_FONT_SIZE_SMALL,
+ SYSTEM_SETTINGS_FONT_SIZE_NORMAL,
+ SYSTEM_SETTINGS_FONT_SIZE_LARGE,
+ SYSTEM_SETTINGS_FONT_SIZE_HUGE,
+ SYSTEM_SETTINGS_FONT_SIZE_GIANT
+ };
+ int fsCnt = sizeof(fontSize) / sizeof(fontSize[0]);
+ int getVal;
+ int setVal;
+ sst_interface *iface;
+
+ sstm_system_info_get_platform_bool_setup(true);
+ sstm_dlopen_setup(true);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, "BreezeSans", 0);
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, 0);
+
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_FONT_SIZE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ for (int i = 0; i < fsCnt; i++) {
+ setVal = fontSize[i];
+ ret = sst_font_set_size(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);
+ }
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst_interface.h"
+#include "sst.h"
+}
+
+#define SST_DEPRECATED_KEY ((int)SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED + 1)
+
+TEST(SstInterfaceTest, getInterfaceOk)
+{
+ sst_interface *iface;
+ int key = (int)SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE;
+
+ sstm_system_info_get_platform_string_setup(true);
+ sstm_system_info_get_platform_bool_setup(true);
+
+ for ( ; key < (int)SYSTEM_SETTINGS_KEY_MAX; key++) {
+ if (key == SST_DEPRECATED_KEY) {
+ continue;
+ }
+ int ret = sst_get_interface((system_settings_key_e)key, &iface);
+ EXPECT_TRUE((SYSTEM_SETTINGS_ERROR_NONE == ret) || (SYSTEM_SETTINGS_ERROR_NOT_SUPPORTED == ret));
+ }
+}
+
+TEST(SstInterfaceTest, getInterfaceERRInput)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_MAX, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ ret = sst_get_interface((system_settings_key_e)SST_DEPRECATED_KEY, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_interface.h"
+#include "sst_misc.h"
+}
+
+TEST(SstMisc, fileExists)
+{
+ sstm_access_setup(true);
+ bool ret = sst_misc_file_exists(SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3");
+ EXPECT_EQ(true, ret);
+
+ ret = sst_misc_file_exists("file.not_exist");
+ EXPECT_EQ(false, ret);
+}
+
+TEST(SstMisc, getWifiQSNoti)
+{
+ bool val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_NETWORK_WIFI_NOTIFICATION, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_WIFI_ENABLE_QS, VCONFKEY_WIFI_QS_ENABLE, 0);
+ ret = sst_misc_get_wifi_QS_noti(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST(SstMisc, getWifiQSNotiERR)
+{
+ bool val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_NETWORK_WIFI_NOTIFICATION, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ sstm_vconf_get_int_setup(VCONFKEY_WIFI_ENABLE_QS, VCONFKEY_WIFI_QS_ENABLE, -1);
+ ret = sst_misc_get_wifi_QS_noti(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstMisc, getAdsID)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 1, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_AD_ID, "00000000-0000-0000-000000000000", 0);
+ ret = sst_misc_get_ads_id(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 1, 0);
+ ret = vconf_set_int(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_misc_get_ads_id(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstMisc, getAdsIDERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_AD_ID, "00000000-0000-0000-000000000000", -1);
+
+ ret = sst_misc_get_ads_id(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstMisc, setAdsID)
+{
+ char *getVal = NULL;
+ const char *setVal = "00000215-0156-0133-0034-000000000102";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_AD_ID, 0);
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_AD_ID_OPT_OUT, 0, 0);
+
+ ret = sst_misc_set_ads_id(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_misc_get_ads_id(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+
+ free(getVal);
+}
+
+TEST(SstMisc, setAdsIDERR)
+{
+ const char *setVal = "00000215-0156-0133-0034-000000000102";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ADS_ID, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_AD_ID, -1);
+ ret = sst_misc_set_ads_id(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstMisc, getUltraDataSaveState)
+{
+ int val;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 1, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "org.tizen.setting", 0);
+ sstm_app_manager_get_app_id_setup(0);
+ sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", 0);
+
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST(SstMisc, getUltraDataSaveStateERR)
+{
+ int val;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_ULTRA_DATA_SAVE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 1, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "org.tizen.setting", 0);
+ sstm_app_manager_get_app_id_setup(0);
+ sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", 0);
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_package_manager_get_package_id_by_app_id_setup("org.tizen.setting", -1);
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_app_manager_get_app_id_setup(-1);
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_UDSM_PKGID_LIST, "NONE", -1);
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_UDSM, 0, -1);
+ ret = sst_misc_get_uds_state(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_vconf.h"
+#include "sst_interface.h"
+#include "sst_screen.h"
+}
+
+static const char *sstBgPath = SYS_SETTINGS_TEST_DIR"/bg_test.png";
+
+TEST(SstScreenTest, getHomeWallPaper)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_BGSET, "test.png", 0);
+ ret = sst_vconf_get_str(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstScreenTest, setHomeWallPaper)
+{
+ char *getVal = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_evas_object_image_load_error_setup(0);
+ sstm_vconf_set_str_setup(VCONFKEY_BGSET, 0);
+ ret = sst_screen_set_home_wallpaper(iface, sstBgPath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_vconf_get_str(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(sstBgPath, getVal);
+ free(getVal);
+}
+
+TEST(SstScreenTest, setHomeWallPaperERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_evas_object_image_load_error_setup(0);
+ sstm_vconf_set_str_setup(VCONFKEY_BGSET, -1);
+ ret = sst_screen_set_home_wallpaper(iface, sstBgPath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_evas_object_image_load_error_setup(-1);
+ ret = sst_screen_set_home_wallpaper(iface, "test.png");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+
+TEST(SstScreenTest, setLockWallPaper)
+{
+ char *getVal = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_LOCK_SCREEN, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_evas_object_image_load_error_setup(0);
+ sstm_vconf_set_str_setup(VCONFKEY_IDLE_LOCK_BGSET, 0);
+ ret = sst_screen_set_lock_wallpaper(iface, sstBgPath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_vconf_get_str(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(sstBgPath, getVal);
+ free(getVal);
+}
+
+TEST(SstScreenTest, setLockWallPaperERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_LOCK_SCREEN, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_evas_object_image_load_error_setup(0);
+ sstm_vconf_set_str_setup(VCONFKEY_IDLE_LOCK_BGSET, -1);
+ ret = sst_screen_set_lock_wallpaper(iface, sstBgPath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_evas_object_image_load_error_setup(-1);
+ ret = sst_screen_set_lock_wallpaper(iface, "test.png");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST(SstScreenTest, getLockScreen)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
+ ret = sst_screen_get_lockscreen(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstScreenTest, getLockScreenERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
+ ret = sst_screen_get_lockscreen(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", -1);
+ ret = sst_screen_get_lockscreen(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, -1);
+ ret = sst_screen_get_lockscreen(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstScreenTest, setLockScreen)
+{
+ char *getVal = NULL;
+ const char *setVal = "org.tizen.voice-control-panel";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_pkgmgrinfo_appinfo_get_appinfo_setup(0);
+ sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, true);
+ sstm_pkgmgrinfo_appinfo_destroy_appinfo_setup(0);
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, 0);
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, 0);
+
+ ret = sst_screen_set_lockscreen(iface, "com.samsung.lockscreen");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_screen_get_lockscreen(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+
+ ret = vconf_set_int(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
+
+ free(getVal);
+}
+
+TEST(SstScreenTest, setLockScreenERR)
+{
+ const char *setVal = "com.samsung.lockscreen";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_pkgmgrinfo_appinfo_get_appinfo_setup(0);
+ sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, true);
+ sstm_pkgmgrinfo_appinfo_destroy_appinfo_setup(0);
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
+ sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, -1);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, -1);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, 0);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, -1);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, false);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_pkgmgrinfo_appinfo_foreach_category_setup(-1, false);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ sstm_pkgmgrinfo_appinfo_get_appinfo_setup(-1);
+ ret = sst_screen_set_lockscreen(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+}
+
+TEST(SstScreenTest, setBackLightTime)
+{
+ int getVal;
+ 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, 0);
+
+ ret = sst_screen_set_backlight_time(iface, -5);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ ret = sst_screen_set_backlight_time(iface, 601);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ ret = sst_screen_set_backlight_time(iface, 300);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_vconf_get_int(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(getVal, 300);
+}
+
+TEST(SstScreenTest, setBackLightTimeERR)
+{
+ 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_screen_set_backlight_time(iface, 300);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_sound.h"
+#include "sst_vconf.h"
+#include "sst_interface.h"
+}
+
+class SstSoundTest : public ::testing::Test {
+protected:
+ void SetUp() override
+ {
+ loop = g_main_loop_new(NULL, FALSE);
+ }
+
+ void TearDown() override
+ {
+ g_main_loop_unref(loop);
+ loop = NULL;
+ }
+
+ static bool ringtoneListCallback(int index, const char *data, void *user_data)
+ {
+ INFO("filename(%s)", data);
+ int *ringtone_num = (int*)user_data;
+ *ringtone_num += 1;
+ return true;
+ }
+
+ static gboolean checkRingtoneIdle(gpointer data)
+ {
+ int ringtone_num = 0;
+ int cur_cnt = 0;
+ int ret = sst_sound_get_call_ringtone_list(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &cur_cnt);
+
+ for (int i = 0; i < ringtoneFilesCnt; i++) {
+ ret = sst_sound_add_call_ringtone(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ }
+ ret = sst_sound_get_call_ringtone_list(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &ringtone_num);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ for (int i = ringtoneFilesCnt - 1; i >= 0; i--) {
+ ret = sst_sound_del_call_ringtone(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ }
+ EXPECT_EQ(ringtone_num - cur_cnt, ringtoneFilesCnt);
+ g_main_loop_quit(loop);
+ return G_SOURCE_REMOVE;
+ }
+ static GMainLoop *loop;
+ static const char *ringtonePath;
+ static int ringtoneFilesCnt;
+ static const char *ringtoneFiles[];
+};
+
+const char *SstSoundTest::ringtonePath = SYS_SETTINGS_TEST_DIR "/ringtone_sdk.mp3";
+const char *SstSoundTest::ringtoneFiles[] = {
+ SYS_SETTINGS_TEST_DIR"/Over the horizon.mp3",
+ SYS_SETTINGS_TEST_DIR"/sound_5.mp3",
+ SYS_SETTINGS_TEST_DIR"/big_buck_bunny.mp3",
+ SYS_SETTINGS_TEST_DIR"/daliTestVideo.mp3",
+ SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3"
+};
+int SstSoundTest::ringtoneFilesCnt = sizeof(ringtoneFiles)/sizeof(const char*);
+GMainLoop *SstSoundTest::loop = NULL;
+
+TEST_F(SstSoundTest, getCallRingtone)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, ringtonePath, 0);
+ ret = sst_sound_get_call_ringtone(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST_F(SstSoundTest, getCallRingtoneERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, "error", -1);
+ ret = sst_sound_get_call_ringtone(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST_F(SstSoundTest, setCallRingtone)
+{
+ char *getVal = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, 0);
+
+ ret = sst_sound_set_call_ringtone(iface, "not_exist.mp3");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ ret = sst_sound_set_call_ringtone(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_sound_get_call_ringtone(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(ringtonePath, getVal);
+
+ free(getVal);
+}
+
+TEST_F(SstSoundTest, setCallRingtoneERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, -1);
+ ret = sst_sound_set_call_ringtone(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST_F(SstSoundTest, addDelGetRingtone)
+{
+ sstm_access_setup(true);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
+ g_idle_add(checkRingtoneIdle, NULL);
+ g_main_loop_run(loop);
+}
+
+
+TEST_F(SstSoundTest, getEmailAlert)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_RINGTONE_DEFAULT_PATH_STR, ringtonePath, 0);
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, "test.mp3", 0);
+
+ ret = sst_sound_get_email_alert(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, ringtonePath, 0);
+
+ ret = sst_sound_get_email_alert(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST_F(SstSoundTest, getEmailAlertERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, ringtonePath, -1);
+ ret = sst_sound_get_email_alert(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST_F(SstSoundTest, setEmailAlert)
+{
+ char *getVal = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, 0);
+
+ ret = sst_sound_set_email_alert(iface, "not_exist.mp3");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+
+ ret = sst_sound_set_email_alert(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_sound_get_email_alert(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(ringtonePath, getVal);
+
+ free(getVal);
+}
+
+TEST_F(SstSoundTest, setEmailAlertERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, -1);
+ ret = sst_sound_set_email_alert(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_access_setup(false);
+ ret = sst_sound_set_email_alert(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ sstm_access_setup(true);
+}
+
+TEST_F(SstSoundTest, setNotification)
+{
+ char *getVal = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, 0);
+
+ ret = sst_sound_set_notification(iface, "not_exist.mp3");
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ ret = sst_sound_set_notification(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_vconf_get_str(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(ringtonePath, getVal);
+
+ free(getVal);
+}
+
+TEST_F(SstSoundTest, setNotificationERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, -1);
+ ret = sst_sound_set_notification(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_access_setup(false);
+ ret = sst_sound_set_notification(iface, ringtonePath);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ sstm_access_setup(true);
+}
+
+TEST_F(SstSoundTest, getSlientMode)
+{
+ bool val = false;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, 0);
+
+ ret = sst_sound_get_silent_mode(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST_F(SstSoundTest, getSlientModeERR)
+{
+ bool val;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, -1);
+ ret = sst_sound_get_silent_mode(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, -1);
+ ret = sst_sound_get_silent_mode(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST_F(SstSoundTest, setSlientMode)
+{
+ bool getVal;
+ bool setVal;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
+ sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, 0);
+
+ ret = sst_sound_get_silent_mode(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ setVal = !getVal;
+
+ ret = sst_sound_set_silent_mode(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_sound_get_silent_mode(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(getVal, setVal);
+
+ ret = sst_sound_set_silent_mode(iface, !getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST_F(SstSoundTest, setSlientModeERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, 0);
+ sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, -1);
+ ret = sst_sound_set_silent_mode(iface, true);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, -1);
+ ret = sst_sound_set_silent_mode(iface, true);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_interface.h"
+#include "sst_time_N_locale.h"
+}
+
+TEST(SstTimeNLocaleTest, getCountry)
+{
+ char *val = NULL;
+ 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_locale_get_country(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstTimeNLocaleTest, getCountryERR)
+{
+ char *val = NULL;
+ 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, "012345678901234567890", 0);
+ ret = sst_locale_get_country(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", -1);
+ ret = sst_locale_get_country(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, setCountry)
+{
+ char *getVal = NULL;
+ 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);
+
+ sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, 0);
+
+ ret = sst_locale_set_country(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_locale_get_country(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+
+ free(getVal);
+}
+
+TEST(SstTimeNLocaleTest, setCountryERR)
+{
+ 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);
+
+ sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, -1);
+ ret = sst_locale_set_country(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, getLanguage)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "ko", 0);
+
+ ret = sst_locale_get_language(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstTimeNLocaleTest, getLanguageERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "012345678901234567890", 0);
+ ret = sst_locale_get_language(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "ko", -1);
+ ret = sst_locale_get_language(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, setLanguage)
+{
+ char *getVal = NULL;
+ const char *setVal = "ko_KR";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_str_setup(VCONFKEY_LANGSET, 0);
+
+ ret = sst_locale_set_language(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_locale_get_language(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+
+ free(getVal);
+}
+
+TEST(SstTimeNLocaleTest, setLanguageERR)
+{
+ const char *setVal = "ko_KR";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_str_setup(VCONFKEY_LANGSET, -1);
+ ret = sst_locale_set_language(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, getTimeformat24Hour)
+{
+ bool val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, false, 0);
+ ret = sst_locale_get_timeformat_24hour(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST(SstTimeNLocaleTest, getTimeformat24HourERR)
+{
+ bool val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_get_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, false, -1);
+ ret = sst_locale_get_timeformat_24hour(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, setTimeformat24Hour)
+{
+ bool getVal;
+ bool setVal;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, 0);
+ ret = sst_locale_get_timeformat_24hour(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ setVal = !getVal;
+
+ ret = sst_locale_set_timeformat_24hour(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_locale_get_timeformat_24hour(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(getVal, setVal);
+
+ ret = sst_locale_set_timeformat_24hour(iface, !getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
+
+TEST(SstTimeNLocaleTest, setTimeformat24HourERR)
+{
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_vconf_set_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, -1);
+ ret = sst_locale_set_timeformat_24hour(iface, true);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+}
+
+TEST(SstTimeNLocaleTest, getTimeZone)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_readlink_setup(true);
+ ret = sst_locale_get_timezone(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ free(val);
+}
+
+TEST(SstTimeNLocaleTest, getTimeZoneERR)
+{
+ char *val = NULL;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_readlink_setup(false);
+ ret = sst_locale_get_timezone(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+ sstm_readlink_setup(true);
+}
+
+TEST(SstTimeNLocaleTest, setTimeZone)
+{
+ char *getVal = NULL;
+ const char *setVal = "Asia/Seoul";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_alarmmgr_set_timezone_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_TIMEZONE_ID, 0);
+
+ ret = sst_locale_set_timezone(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_locale_get_timezone(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_STREQ(setVal, getVal);
+
+ free(getVal);
+}
+
+TEST(SstTimeNLocaleTest, setTimeZoneERR)
+{
+ const char *setVal = "Asia/Seoul";
+
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ sstm_access_setup(true);
+ sstm_alarmmgr_set_timezone_setup(true);
+ sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_TIMEZONE_ID, -1);
+ ret = sst_locale_set_timezone(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_alarmmgr_set_timezone_setup(false);
+ ret = sst_locale_set_timezone(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
+
+ sstm_access_setup(false);
+ ret = sst_locale_set_timezone(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
+ sstm_access_setup(true);
+}
+
+TEST(SstTimeNLocaleTest, getTimeChanged)
+{
+ int val;
+ sst_interface *iface;
+ int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_TIME_CHANGED, &iface);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ ret = sst_time_get_changed(iface, &val);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+}
--- /dev/null
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <string.h>
+#include <glib.h>
+#include <gtest/gtest.h>
+#include <vconf.h>
+
+#include "system_settings.h"
+#include "mocks/sstt_mock.h"
+
+extern "C" {
+#include "sst.h"
+#include "sst_vconf.h"
+#include "sst_interface.h"
+}
+
+class SstVconfCBTest : public ::testing::Test {
+protected:
+ void SetUp() override
+ {
+ loop = g_main_loop_new(NULL, FALSE);
+ }
+
+ void TearDown() override
+ {
+ g_main_loop_unref(loop);
+ loop = NULL;
+ }
+
+ static gboolean checkCallbackIdle(gpointer data)
+ {
+ 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, !(*val));
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+
+ return G_SOURCE_REMOVE;
+ }
+
+ static void changedMultiCallback1(system_settings_key_e key, void *user_data)
+ {
+ INFO("changedMultiCallback1 called!");
+ resultCB |= 0x1;
+ if (0x11 == resultCB)
+ g_main_loop_quit(loop);
+ }
+
+ static void changedMultiCallback2(system_settings_key_e key, void *user_data)
+ {
+ INFO("changedMultiCallback2 called!");
+ resultCB |= 0x10;
+ if (0x11 == resultCB)
+ g_main_loop_quit(loop);
+ }
+
+ static void changedCallback(system_settings_key_e key, void *user_data)
+ {
+ INFO("Callback called!");
+ resultCB = SYSTEM_SETTINGS_ERROR_NONE;
+ g_main_loop_quit(loop);
+ }
+
+ static int resultCB;
+ static GMainLoop *loop;
+ static const char *ringtoneFiles[];
+};
+
+GMainLoop *SstVconfCBTest::loop = NULL;
+int SstVconfCBTest::resultCB = 0;
+
+TEST(SstVconfTest, getValueInt)
+{
+ 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, 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 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);
+
+ 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);
+}
+
+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)
+{
+ 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, 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;
+ bool setVal;
+ 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;
+ ret = sst_vconf_set_bool(iface, setVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_vconf_get_bool(iface, &getVal);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ EXPECT_EQ(setVal, getVal);
+ ret = sst_vconf_set_bool(iface, !getVal);
+ 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);
+}
+
+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);
+}
+
+TEST(SstVconfTest, setValueString)
+{
+ 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);
+
+ 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);
+}
+
+TEST_F(SstVconfCBTest, setUnsetChangedCallback)
+{
+ 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, &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);
+}
+
+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 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);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_vconf_add_multi_cb(iface, changedMultiCallback2, NULL);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ resultCB = 0;
+ 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);
+}
+
+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 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]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ ret = sst_vconf_subscribe(iface, changedMultiCallback2, NULL, &cb[1]);
+ EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
+ resultCB = 0;
+ 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);
+}
+
+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);
+}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_vconf.h"
-#include "sst_interface.h"
-#include "sst_screen.h"
-}
-
-static const char *sstBgPath = SYS_SETTINGS_TEST_DIR"/bg_test.png";
-
-TEST(SstScreenTest, getHomeWallPaper)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_BGSET, "test.png", 0);
- ret = sst_vconf_get_str(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_BGSET);
-}
-
-TEST(SstScreenTest, setHomeWallPaper)
-{
- char *getVal = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_evas_object_image_load_error_setup(0);
- sstm_vconf_set_str_setup(VCONFKEY_BGSET, 0);
- ret = sst_screen_set_home_wallpaper(iface, sstBgPath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_vconf_get_str(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(sstBgPath, getVal);
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_BGSET);
-}
-
-TEST(SstScreenTest, setHomeWallPaperERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_HOME_SCREEN, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_evas_object_image_load_error_setup(0);
- sstm_vconf_set_str_setup(VCONFKEY_BGSET, -1);
- ret = sst_screen_set_home_wallpaper(iface, sstBgPath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_evas_object_image_load_error_setup(-1);
- ret = sst_screen_set_home_wallpaper(iface, "test.png");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-}
-
-
-TEST(SstScreenTest, setLockWallPaper)
-{
- char *getVal = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_LOCK_SCREEN, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_evas_object_image_load_error_setup(0);
- sstm_vconf_set_str_setup(VCONFKEY_IDLE_LOCK_BGSET, 0);
- ret = sst_screen_set_lock_wallpaper(iface, sstBgPath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_vconf_get_str(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(sstBgPath, getVal);
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_IDLE_LOCK_BGSET);
-}
-
-TEST(SstScreenTest, setLockWallPaperERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_WALLPAPER_LOCK_SCREEN, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_evas_object_image_load_error_setup(0);
- sstm_vconf_set_str_setup(VCONFKEY_IDLE_LOCK_BGSET, -1);
- ret = sst_screen_set_lock_wallpaper(iface, sstBgPath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_evas_object_image_load_error_setup(-1);
- ret = sst_screen_set_lock_wallpaper(iface, "test.png");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- sstm_vconf_clear_str(VCONFKEY_IDLE_LOCK_BGSET);
-}
-
-TEST(SstScreenTest, getLockScreen)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
- ret = sst_screen_get_lockscreen(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR);
-}
-
-TEST(SstScreenTest, getLockScreenERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
- ret = sst_screen_get_lockscreen(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", -1);
- ret = sst_screen_get_lockscreen(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, -1);
- ret = sst_screen_get_lockscreen(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR);
-}
-
-TEST(SstScreenTest, setLockScreen)
-{
- char *getVal = NULL;
- const char *setVal = "org.tizen.voice-control-panel";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_pkgmgrinfo_appinfo_get_appinfo_setup(0);
- sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, true);
- sstm_pkgmgrinfo_appinfo_destroy_appinfo_setup(0);
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, 0);
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, 0);
-
- ret = sst_screen_set_lockscreen(iface, "com.samsung.lockscreen");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_screen_get_lockscreen(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
-
- ret = vconf_set_int(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR);
-}
-
-TEST(SstScreenTest, setLockScreenERR)
-{
- const char *setVal = "com.samsung.lockscreen";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCKSCREEN_APP, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_pkgmgrinfo_appinfo_get_appinfo_setup(0);
- sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, true);
- sstm_pkgmgrinfo_appinfo_destroy_appinfo_setup(0);
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, "com.samsung.lockscreen", 0);
- sstm_vconf_set_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, -1);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, -1);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_PASSWORD, 0);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_LOCKSCREEN_APP_PASSWORD_MODE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, SETTING_SCREEN_LOCK_TYPE_NONE, -1);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_pkgmgrinfo_appinfo_foreach_category_setup(0, false);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_pkgmgrinfo_appinfo_foreach_category_setup(-1, false);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- sstm_pkgmgrinfo_appinfo_get_appinfo_setup(-1);
- ret = sst_screen_set_lockscreen(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR);
-}
-
-TEST(SstScreenTest, setBackLightTime)
-{
- int getVal;
- 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, 0);
-
- ret = sst_screen_set_backlight_time(iface, -5);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- ret = sst_screen_set_backlight_time(iface, 601);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- ret = sst_screen_set_backlight_time(iface, 300);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_vconf_get_int(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(getVal, 300);
-}
-
-TEST(SstScreenTest, setBackLightTimeERR)
-{
- 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_screen_set_backlight_time(iface, 300);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_sound.h"
-#include "sst_vconf.h"
-#include "sst_interface.h"
-}
-
-class SstSoundTest : public ::testing::Test {
-protected:
- void SetUp() override
- {
- loop = g_main_loop_new(NULL, FALSE);
- }
-
- void TearDown() override
- {
- g_main_loop_unref(loop);
- loop = NULL;
- }
-
- static bool ringtoneListCallback(int index, const char *data, void *user_data)
- {
- INFO("filename(%s)", data);
- int *ringtone_num = (int*)user_data;
- *ringtone_num += 1;
- return true;
- }
-
- static gboolean checkRingtoneIdle(gpointer data)
- {
- int ringtone_num = 0;
- int cur_cnt = 0;
- int ret = sst_sound_get_call_ringtone_list(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &cur_cnt);
-
- for (int i = 0; i < ringtoneFilesCnt; i++) {
- ret = sst_sound_add_call_ringtone(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- }
- ret = sst_sound_get_call_ringtone_list(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneListCallback, &ringtone_num);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- for (int i = ringtoneFilesCnt - 1; i >= 0; i--) {
- ret = sst_sound_del_call_ringtone(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, ringtoneFiles[i]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- }
- EXPECT_EQ(ringtone_num - cur_cnt, ringtoneFilesCnt);
- g_main_loop_quit(loop);
- return G_SOURCE_REMOVE;
- }
- static GMainLoop *loop;
- static const char *ringtonePath;
- static int ringtoneFilesCnt;
- static const char *ringtoneFiles[];
-};
-
-const char *SstSoundTest::ringtonePath = SYS_SETTINGS_TEST_DIR "/ringtone_sdk.mp3";
-const char *SstSoundTest::ringtoneFiles[] = {
- SYS_SETTINGS_TEST_DIR"/Over the horizon.mp3",
- SYS_SETTINGS_TEST_DIR"/sound_5.mp3",
- SYS_SETTINGS_TEST_DIR"/big_buck_bunny.mp3",
- SYS_SETTINGS_TEST_DIR"/daliTestVideo.mp3",
- SYS_SETTINGS_TEST_DIR"/tct-content-tizen-tests_video.mp3"
-};
-int SstSoundTest::ringtoneFilesCnt = sizeof(ringtoneFiles)/sizeof(const char*);
-GMainLoop *SstSoundTest::loop = NULL;
-
-TEST_F(SstSoundTest, getCallRingtone)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, ringtonePath, 0);
- ret = sst_sound_get_call_ringtone(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, getCallRingtoneERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, "error", -1);
- ret = sst_sound_get_call_ringtone(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setCallRingtone)
-{
- char *getVal = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, 0);
-
- ret = sst_sound_set_call_ringtone(iface, "not_exist.mp3");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- ret = sst_sound_set_call_ringtone(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_sound_get_call_ringtone(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(ringtonePath, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setCallRingtoneERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, -1);
- ret = sst_sound_set_call_ringtone(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, addDelGetRingtone)
-{
- sstm_access_setup(true);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_CALL_RINGTONE_USER_LIST, "[]", 0);
- g_idle_add(checkRingtoneIdle, NULL);
- g_main_loop_run(loop);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-}
-
-
-TEST_F(SstSoundTest, getEmailAlert)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_RINGTONE_DEFAULT_PATH_STR, ringtonePath, 0);
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, "test.mp3", 0);
-
- ret = sst_sound_get_email_alert(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, ringtonePath, 0);
-
- ret = sst_sound_get_email_alert(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, getEmailAlertERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, ringtonePath, -1);
- ret = sst_sound_get_email_alert(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setEmailAlert)
-{
- char *getVal = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, 0);
-
- ret = sst_sound_set_email_alert(iface, "not_exist.mp3");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
-
- ret = sst_sound_set_email_alert(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_sound_get_email_alert(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(ringtonePath, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setEmailAlertERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, -1);
- ret = sst_sound_set_email_alert(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_access_setup(false);
- ret = sst_sound_set_email_alert(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- sstm_access_setup(true);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setNotification)
-{
- char *getVal = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, 0);
-
- ret = sst_sound_set_notification(iface, "not_exist.mp3");
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- ret = sst_sound_set_notification(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_vconf_get_str(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(ringtonePath, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, setNotificationERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, -1);
- ret = sst_sound_set_notification(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_access_setup(false);
- ret = sst_sound_set_notification(iface, ringtonePath);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- sstm_access_setup(true);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-}
-
-TEST_F(SstSoundTest, getSlientMode)
-{
- bool val = false;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, 0);
-
- ret = sst_sound_get_silent_mode(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
-
-TEST_F(SstSoundTest, getSlientModeERR)
-{
- bool val;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, -1);
- ret = sst_sound_get_silent_mode(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, -1);
- ret = sst_sound_get_silent_mode(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST_F(SstSoundTest, setSlientMode)
-{
- bool getVal;
- bool setVal;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, false, 0);
- sstm_vconf_get_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, false, 0);
-
- ret = sst_sound_get_silent_mode(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- setVal = !getVal;
-
- ret = sst_sound_set_silent_mode(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_sound_get_silent_mode(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(getVal, setVal);
-
- ret = sst_sound_set_silent_mode(iface, !getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
-
-TEST_F(SstSoundTest, setSlientModeERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, 0);
- sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, -1);
- ret = sst_sound_set_silent_mode(iface, true);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_set_bool_setup(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, -1);
- ret = sst_sound_set_silent_mode(iface, true);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_interface.h"
-#include "sst_time_N_locale.h"
-}
-
-TEST(SstTimeNLocaleTest, getCountry)
-{
- char *val = NULL;
- 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_locale_get_country(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST(SstTimeNLocaleTest, getCountryERR)
-{
- char *val = NULL;
- 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, "012345678901234567890", 0);
- ret = sst_locale_get_country(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_REGIONFORMAT, "ko", -1);
- ret = sst_locale_get_country(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST(SstTimeNLocaleTest, setCountry)
-{
- char *getVal = NULL;
- 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);
-
- sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, 0);
-
- ret = sst_locale_set_country(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_locale_get_country(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST(SstTimeNLocaleTest, setCountryERR)
-{
- 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);
-
- sstm_vconf_set_str_setup(VCONFKEY_REGIONFORMAT, -1);
- ret = sst_locale_set_country(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST(SstTimeNLocaleTest, getLanguage)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "ko", 0);
-
- ret = sst_locale_get_language(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-
- sstm_vconf_clear_str(VCONFKEY_LANGSET);
-}
-
-TEST(SstTimeNLocaleTest, getLanguageERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "012345678901234567890", 0);
- ret = sst_locale_get_language(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_get_str_setup(VCONFKEY_LANGSET, "ko", -1);
- ret = sst_locale_get_language(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_LANGSET);
-}
-
-TEST(SstTimeNLocaleTest, setLanguage)
-{
- char *getVal = NULL;
- const char *setVal = "ko_KR";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_str_setup(VCONFKEY_LANGSET, 0);
-
- ret = sst_locale_set_language(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_locale_get_language(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_LANGSET);
-}
-
-TEST(SstTimeNLocaleTest, setLanguageERR)
-{
- const char *setVal = "ko_KR";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_str_setup(VCONFKEY_LANGSET, -1);
- ret = sst_locale_set_language(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_vconf_clear_str(VCONFKEY_LANGSET);
-}
-
-TEST(SstTimeNLocaleTest, getTimeformat24Hour)
-{
- bool val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, false, 0);
- ret = sst_locale_get_timeformat_24hour(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
-
-TEST(SstTimeNLocaleTest, getTimeformat24HourERR)
-{
- bool val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_get_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, false, -1);
- ret = sst_locale_get_timeformat_24hour(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST(SstTimeNLocaleTest, setTimeformat24Hour)
-{
- bool getVal;
- bool setVal;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, 0);
- ret = sst_locale_get_timeformat_24hour(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- setVal = !getVal;
-
- ret = sst_locale_set_timeformat_24hour(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_locale_get_timeformat_24hour(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(getVal, setVal);
-
- ret = sst_locale_set_timeformat_24hour(iface, !getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
-
-TEST(SstTimeNLocaleTest, setTimeformat24HourERR)
-{
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_vconf_set_int_setup(VCONFKEY_REGIONFORMAT_TIME1224, -1);
- ret = sst_locale_set_timeformat_24hour(iface, true);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-}
-
-TEST(SstTimeNLocaleTest, getTimeZone)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_readlink_setup(true);
- ret = sst_locale_get_timezone(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- free(val);
-}
-
-TEST(SstTimeNLocaleTest, getTimeZoneERR)
-{
- char *val = NULL;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_readlink_setup(false);
- ret = sst_locale_get_timezone(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
- sstm_readlink_setup(true);
-}
-
-TEST(SstTimeNLocaleTest, setTimeZone)
-{
- char *getVal = NULL;
- const char *setVal = "Asia/Seoul";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_alarmmgr_set_timezone_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_TIMEZONE_ID, 0);
-
- ret = sst_locale_set_timezone(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_locale_get_timezone(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_STREQ(setVal, getVal);
-
- free(getVal);
-
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
-}
-
-TEST(SstTimeNLocaleTest, setTimeZoneERR)
-{
- const char *setVal = "Asia/Seoul";
-
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- sstm_access_setup(true);
- sstm_alarmmgr_set_timezone_setup(true);
- sstm_vconf_set_str_setup(VCONFKEY_SETAPPL_TIMEZONE_ID, -1);
- ret = sst_locale_set_timezone(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_alarmmgr_set_timezone_setup(false);
- ret = sst_locale_set_timezone(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_IO_ERROR, ret);
-
- sstm_access_setup(false);
- ret = sst_locale_set_timezone(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_INVALID_PARAMETER, ret);
- sstm_access_setup(true);
- sstm_vconf_clear_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
-}
-
-TEST(SstTimeNLocaleTest, getTimeChanged)
-{
- int val;
- sst_interface *iface;
- int ret = sst_get_interface(SYSTEM_SETTINGS_KEY_TIME_CHANGED, &iface);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- ret = sst_time_get_changed(iface, &val);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-}
+++ /dev/null
-/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <string.h>
-#include <glib.h>
-#include <gtest/gtest.h>
-#include <vconf.h>
-
-#include "system_settings.h"
-#include "mocks/sstt_mock.h"
-
-extern "C" {
-#include "sst.h"
-#include "sst_vconf.h"
-#include "sst_interface.h"
-}
-
-class SstVconfCBTest : public ::testing::Test {
-protected:
- void SetUp() override
- {
- loop = g_main_loop_new(NULL, FALSE);
- }
-
- void TearDown() override
- {
- g_main_loop_unref(loop);
- loop = NULL;
- }
-
- static gboolean checkCallbackIdle(gpointer data)
- {
- 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, !(*val));
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
-
- return G_SOURCE_REMOVE;
- }
-
- static void changedMultiCallback1(system_settings_key_e key, void *user_data)
- {
- INFO("changedMultiCallback1 called!");
- resultCB |= 0x1;
- if (0x11 == resultCB)
- g_main_loop_quit(loop);
- }
-
- static void changedMultiCallback2(system_settings_key_e key, void *user_data)
- {
- INFO("changedMultiCallback2 called!");
- resultCB |= 0x10;
- if (0x11 == resultCB)
- g_main_loop_quit(loop);
- }
-
- static void changedCallback(system_settings_key_e key, void *user_data)
- {
- INFO("Callback called!");
- resultCB = SYSTEM_SETTINGS_ERROR_NONE;
- g_main_loop_quit(loop);
- }
-
- static int resultCB;
- static GMainLoop *loop;
- static const char *ringtoneFiles[];
-};
-
-GMainLoop *SstVconfCBTest::loop = NULL;
-int SstVconfCBTest::resultCB = 0;
-
-TEST(SstVconfTest, getValueInt)
-{
- 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, 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 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);
-
- 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);
-}
-
-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)
-{
- 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, 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;
- bool setVal;
- 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;
- ret = sst_vconf_set_bool(iface, setVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_vconf_get_bool(iface, &getVal);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- EXPECT_EQ(setVal, getVal);
- ret = sst_vconf_set_bool(iface, !getVal);
- 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 *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);
-
- 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);
-
- sstm_vconf_clear_str(VCONFKEY_REGIONFORMAT);
-}
-
-TEST_F(SstVconfCBTest, setUnsetChangedCallback)
-{
- 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, &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);
-}
-
-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 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);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_vconf_add_multi_cb(iface, changedMultiCallback2, NULL);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- resultCB = 0;
- 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);
-}
-
-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 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]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- ret = sst_vconf_subscribe(iface, changedMultiCallback2, NULL, &cb[1]);
- EXPECT_EQ(SYSTEM_SETTINGS_ERROR_NONE, ret);
- resultCB = 0;
- 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);
-}
-
-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);
-}