From: pr.jung Date: Fri, 8 Feb 2019 09:25:27 +0000 (+0900) Subject: [CTC/ITC/UTC][libstorage][ACR-1319][Add storage.external feature] X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fa6d598ffeda7bd91424f12ac04dc82343ed0b31;p=test%2Ftct%2Fnative%2Fapi.git [CTC/ITC/UTC][libstorage][ACR-1319][Add storage.external feature] Change-Id: I8d4ba8519c54bdc278cd6c1dfaa29f27f7f84323 Signed-off-by: pr.jung --- diff --git a/src/ctc/libstorage/CTs-libstorage.c b/src/ctc/libstorage/CTs-libstorage.c index 12c94ce11..2793853af 100755 --- a/src/ctc/libstorage/CTs-libstorage.c +++ b/src/ctc/libstorage/CTs-libstorage.c @@ -22,6 +22,9 @@ //& set: Libstorage +#define STORAGE_FEATURE "http://tizen.org/feature/storage.external" +static bool is_supported; + /** * @function CTs_libstorage_startup * @description Called before each test @@ -30,7 +33,9 @@ */ void CTs_libstorage_startup(void) { - struct stat stBuff; + struct stat stBuff; + int ret; + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); if ( stat(ERR_LOG, &stBuff) == 0 ) { if (remove(ERR_LOG)) @@ -85,8 +90,10 @@ int CTc_Storage_StorageInfo_p(void) START_TEST; struct statvfs stInternalMemoryBuf; + struct statvfs stExternalMemoryBuf; int nRet = -1; double dInternalTotalMemory = 0, dInternalAvailMemory = 0; + double dExternalTotalMemory = 0, dExternalAvailMemory = 0; nRet = storage_get_internal_memory_size(&stInternalMemoryBuf); PRINT_RESULT(STORAGE_ERROR_NONE, nRet, "storage_get_internal_memory_size", StorageGetError(nRet)); @@ -106,11 +113,12 @@ int CTc_Storage_StorageInfo_p(void) FPRINTF("[Line : %d][%s] Internal memory storage is Full! no available internal memory\\n", __LINE__, API_NAMESPACE); } -#ifndef WEARABLE - struct statvfs stExternalMemoryBuf; - double dExternalTotalMemory = 0, dExternalAvailMemory = 0; - nRet = storage_get_external_memory_size(&stExternalMemoryBuf); + if (!is_supported) { + PRINT_RESULT(STORAGE_ERROR_NOT_SUPPORTED, nRet, "storage_get_external_memory_size", StorageGetError(nRet)); + return 0; + } + PRINT_RESULT(STORAGE_ERROR_NONE, nRet, "storage_get_external_memory_size", StorageGetError(nRet)); if ( (stExternalMemoryBuf.f_frsize == 0) || (stExternalMemoryBuf.f_blocks == 0) ) @@ -127,7 +135,6 @@ int CTc_Storage_StorageInfo_p(void) { FPRINTF("[Line : %d][%s] External memory storage is Full! no available external memory\\n", __LINE__, API_NAMESPACE); } -#endif return 0; } @@ -152,7 +159,7 @@ int CTc_Storage_Memory_p(void) { START_TEST; - struct statvfs stInternalMemoryBuf; + struct statvfs stInternalMemoryBuf; int nRet = -1; double dInternalTotalMemory = 0, dInternalAvailMemory = 0, dTotalMemory = 0; diff --git a/src/itc/libstorage/ITs-libstorage.c b/src/itc/libstorage/ITs-libstorage.c index 9538adfc1..6f0b547bd 100755 --- a/src/itc/libstorage/ITs-libstorage.c +++ b/src/itc/libstorage/ITs-libstorage.c @@ -22,6 +22,8 @@ //& set: Storage +#define STORAGE_FEATURE "http://tizen.org/feature/storage.external" + struct str_id { int num; int id; @@ -30,6 +32,7 @@ struct str_id { }; static struct str_id storage_head; +static bool is_supported; /** * @function storage_device_supported_cb_p @@ -151,6 +154,12 @@ void Storage_changed_cb_p(int storage_id, storage_dev_e dev, storage_state_e sta void ITs_storage_startup(void) { struct stat stBuff; + int ret; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + if (stat(ERR_LOG, &stBuff) == 0) remove(ERR_LOG); #if DEBUG @@ -232,6 +241,12 @@ int ITc_libstorage_get_external_memory_size_p(void) struct statvfs stExternalMemSize; storage_error_e nRet = storage_get_external_memory_size(&stExternalMemSize);//target api + + if (!is_supported) { + PRINT_RESULT(STORAGE_ERROR_NOT_SUPPORTED, nRet, "storage_get_external_memory_size", StorageGetError(nRet)); + return 0; + } + PRINT_RESULT(STORAGE_ERROR_NONE, nRet, "storage_get_external_memory_size", StorageGetError(nRet)); double dbExternalMemory = (double)stExternalMemSize.f_frsize*stExternalMemSize.f_blocks; @@ -733,10 +748,10 @@ int ITc_libstorage_set_unset_state_changed_cb_p(void) struct str_id *id; id = storage_head.next; - while (id) + while (id) { storage_error_e nRet = storage_set_state_changed_cb(id->id, &Storage_state_changed_cb_p, NULL);//target api//register callback - if (nRet != STORAGE_ERROR_NONE) + if (nRet != STORAGE_ERROR_NONE) { FPRINTF("[Line : %d][%s] storage_set_state_changed_cb failed for %s, error returned = %s\\n", __LINE__, API_NAMESPACE, StorageGetType(id->type), StorageGetError(nRet)); return 1; @@ -747,7 +762,7 @@ int ITc_libstorage_set_unset_state_changed_cb_p(void) //CHECK_CALLBACK_STATUS("storage_set_state_changed_cb", nSetFailCount); //Unregisters the callback function. nRet = storage_unset_state_changed_cb (id->id, &Storage_state_changed_cb_p);//target api//unregister callback - if (nRet != STORAGE_ERROR_NONE) + if (nRet != STORAGE_ERROR_NONE) { FPRINTF("[Line : %d][%s] storage_unset_state_changed_cb failed for %s, error returned = %s\\n", __LINE__, API_NAMESPACE, StorageGetType(id->type), StorageGetError(nRet)); return 1; @@ -792,14 +807,14 @@ int ITc_libstorage_storage_set_unset_changed_cb_p(void) //target api storage_error_e nRet = storage_set_changed_cb(id->type, Storage_changed_cb_p, NULL); PRINT_RESULT(STORAGE_ERROR_NONE, nRet, "storage_set_changed_cb", StorageGetError(nRet)); - + //as we need manual intervention to invoke callback like mount, unmount sdcard //so we are not checking callback status - + //target api nRet = storage_unset_changed_cb(id->type, Storage_changed_cb_p); PRINT_RESULT(STORAGE_ERROR_NONE, nRet, "storage_unset_changed_cb", StorageGetError(nRet)); - + } else { diff --git a/src/utc/libstorage/utc-system-storage-expand.c b/src/utc/libstorage/utc-system-storage-expand.c index ea1da182c..7d2151534 100755 --- a/src/utc/libstorage/utc-system-storage-expand.c +++ b/src/utc/libstorage/utc-system-storage-expand.c @@ -16,11 +16,14 @@ #include "assert.h" #include +#define STORAGE_FEATURE "http://tizen.org/feature/storage.external" + //& set: StorageExpand static int internal_storage_id = -1; static int external_storage_id = -1; static int extended_id = -1; +static bool is_supported; static bool get_internal_storage(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data) @@ -45,6 +48,12 @@ static bool get_internal_storage(int storage_id, storage_type_e type, */ void utc_storage_startup(void) { + int ret; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + /* find internal storage */ storage_foreach_device_supported(get_internal_storage, NULL); } @@ -120,7 +129,7 @@ int utc_storage_get_root_directory_n_1(void) int err; err = storage_get_root_directory(-1, &path); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -172,7 +181,7 @@ int utc_storage_get_directory_n_1(void) int err; err = storage_get_directory(-1, STORAGE_DIRECTORY_IMAGES, &path); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -242,7 +251,7 @@ int utc_storage_get_type_n_1(void) int err; err = storage_get_type(-1, &type); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -292,7 +301,7 @@ int utc_storage_get_state_n_1(void) int err; err = storage_get_state(-1, &state); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -340,7 +349,7 @@ int utc_storage_get_total_space_n_1(void) int err; err = storage_get_total_space(-1, &size); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -388,7 +397,7 @@ int utc_storage_get_available_space_n_1(void) int err; err = storage_get_available_space(-1, &size); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -438,7 +447,7 @@ int utc_storage_set_state_changed_cb_n_1(void) int err; err = storage_set_state_changed_cb(-1, dts_storage_state_changed_cb, NULL); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -486,7 +495,7 @@ int utc_storage_unset_state_changed_cb_n_1(void) int err; err = storage_unset_state_changed_cb(-1, dts_storage_state_changed_cb); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -517,7 +526,7 @@ int utc_storage_set_changed_cb_p(void) { int err; - if (external_storage_id < 0) + if (!is_supported) return 0; err= storage_set_changed_cb(STORAGE_TYPE_EXTERNAL, test_storage_changed_cb, NULL); @@ -535,7 +544,7 @@ int utc_storage_set_changed_cb_n_1(void) int err; err= storage_set_changed_cb(STORAGE_TYPE_INTERNAL, test_storage_changed_cb, NULL); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -548,7 +557,7 @@ int utc_storage_set_changed_cb_n_2(void) { int err; - if (external_storage_id < 0) + if (!is_supported) return 0; err= storage_set_changed_cb(STORAGE_TYPE_EXTERNAL, NULL, NULL); @@ -579,7 +588,7 @@ int utc_storage_unset_changed_cb_p(void) { int err; - if (external_storage_id < 0) + if (!is_supported) return 0; err= storage_set_changed_cb(STORAGE_TYPE_EXTERNAL, test_storage_changed_cb, NULL); @@ -598,7 +607,7 @@ int utc_storage_unset_changed_cb_n_1(void) int err; err= storage_unset_changed_cb(STORAGE_TYPE_INTERNAL, test_storage_changed_cb); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -611,7 +620,7 @@ int utc_storage_unset_changed_cb_n_2(void) { int err; - if (external_storage_id < 0) + if (!is_supported) return 0; err= storage_unset_changed_cb(STORAGE_TYPE_EXTERNAL, NULL); @@ -697,7 +706,7 @@ int utc_storage_get_type_dev_n_3(void) storage_type_e type; storage_dev_e dev; - err = storage_get_type_dev(10000, &type, &dev); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + err = storage_get_type_dev(-1, &type, &dev); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } diff --git a/src/utc/libstorage/utc-system-storage.c b/src/utc/libstorage/utc-system-storage.c index d55754d83..0a162e940 100755 --- a/src/utc/libstorage/utc-system-storage.c +++ b/src/utc/libstorage/utc-system-storage.c @@ -16,6 +16,8 @@ #include #include "assert.h" +#define STORAGE_FEATURE "http://tizen.org/feature/storage.external" + /** * @testcase utc_system_storage_get_internal_memory_size_p * @since_tizen 2.3 @@ -23,10 +25,10 @@ */ int utc_system_storage_get_internal_memory_size_p(void) { - struct statvfs s; - int ret = storage_get_internal_memory_size(&s); - assert_eq(ret, 0); - return 0; + struct statvfs s; + int ret = storage_get_internal_memory_size(&s); + assert_eq(ret, 0); + return 0; } /** @@ -36,9 +38,9 @@ int utc_system_storage_get_internal_memory_size_p(void) */ int utc_system_storage_get_internal_memory_size_n(void) { - int ret = storage_get_internal_memory_size(NULL); - assert_lt(ret, 0); - return 0; + int ret = storage_get_internal_memory_size(NULL); + assert_lt(ret, 0); + return 0; } //#ifndef TIZENIOT @@ -49,10 +51,21 @@ int utc_system_storage_get_internal_memory_size_n(void) */ int utc_system_storage_get_external_memory_size_p(void) { - struct statvfs s; - int ret = storage_get_external_memory_size(&s); - assert_eq(ret, 0); - return 0; + struct statvfs s; + int ret; + bool is_supported; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + + if (!is_supported) + return 0; + + ret = storage_get_external_memory_size(&s); + assert_eq(ret, 0); + + return 0; } /** @@ -62,8 +75,19 @@ int utc_system_storage_get_external_memory_size_p(void) */ int utc_system_storage_get_external_memory_size_n(void) { - int ret = storage_get_external_memory_size(NULL); - assert_lt(ret, 0); - return 0; + int ret; + bool is_supported; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + + if (!is_supported) + return 0; + + ret = storage_get_external_memory_size(NULL); + assert_lt(ret, 0); + + return 0; } //#endif //TIZENIOT diff --git a/src/utc/libstorage64/utc-system-storage-expand.c b/src/utc/libstorage64/utc-system-storage-expand.c index 1e575e0f9..1c9844a5d 100755 --- a/src/utc/libstorage64/utc-system-storage-expand.c +++ b/src/utc/libstorage64/utc-system-storage-expand.c @@ -120,7 +120,7 @@ int utc_storage_get_root_directory_n_1(void) int err; err = storage_get_root_directory(-1, &path); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -172,7 +172,7 @@ int utc_storage_get_directory_n_1(void) int err; err = storage_get_directory(-1, STORAGE_DIRECTORY_IMAGES, &path); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -242,7 +242,7 @@ int utc_storage_get_type_n_1(void) int err; err = storage_get_type(-1, &type); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -292,7 +292,7 @@ int utc_storage_get_state_n_1(void) int err; err = storage_get_state(-1, &state); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -340,7 +340,7 @@ int utc_storage_get_total_space_n_1(void) int err; err = storage_get_total_space(-1, &size); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -388,7 +388,7 @@ int utc_storage_get_available_space_n_1(void) int err; err = storage_get_available_space(-1, &size); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -438,7 +438,7 @@ int utc_storage_set_state_changed_cb_n_1(void) int err; err = storage_set_state_changed_cb(-1, dts_storage_state_changed_cb, NULL); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } @@ -486,7 +486,7 @@ int utc_storage_unset_state_changed_cb_n_1(void) int err; err = storage_unset_state_changed_cb(-1, dts_storage_state_changed_cb); - assert_eq(err, STORAGE_ERROR_NOT_SUPPORTED); + assert_eq(err, STORAGE_ERROR_INVALID_PARAMETER); return 0; } diff --git a/src/utc/libstorage64/utc-system-storage.c b/src/utc/libstorage64/utc-system-storage.c index d55754d83..8f45571ca 100755 --- a/src/utc/libstorage64/utc-system-storage.c +++ b/src/utc/libstorage64/utc-system-storage.c @@ -16,6 +16,8 @@ #include #include "assert.h" +#define STORAGE_FEATURE "http://tizen.org/feature/storage.external" + /** * @testcase utc_system_storage_get_internal_memory_size_p * @since_tizen 2.3 @@ -23,10 +25,10 @@ */ int utc_system_storage_get_internal_memory_size_p(void) { - struct statvfs s; - int ret = storage_get_internal_memory_size(&s); - assert_eq(ret, 0); - return 0; + struct statvfs s; + int ret = storage_get_internal_memory_size(&s); + assert_eq(ret, 0); + return 0; } /** @@ -36,9 +38,9 @@ int utc_system_storage_get_internal_memory_size_p(void) */ int utc_system_storage_get_internal_memory_size_n(void) { - int ret = storage_get_internal_memory_size(NULL); - assert_lt(ret, 0); - return 0; + int ret = storage_get_internal_memory_size(NULL); + assert_lt(ret, 0); + return 0; } //#ifndef TIZENIOT @@ -49,10 +51,20 @@ int utc_system_storage_get_internal_memory_size_n(void) */ int utc_system_storage_get_external_memory_size_p(void) { - struct statvfs s; - int ret = storage_get_external_memory_size(&s); - assert_eq(ret, 0); - return 0; + struct statvfs s; + bool is_supported; + int ret; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + + if (!is_supported) + return 0; + + ret = storage_get_external_memory_size(&s); + assert_eq(ret, 0); + return 0; } /** @@ -62,8 +74,18 @@ int utc_system_storage_get_external_memory_size_p(void) */ int utc_system_storage_get_external_memory_size_n(void) { - int ret = storage_get_external_memory_size(NULL); - assert_lt(ret, 0); - return 0; + bool is_supported; + int ret; + + ret = system_info_get_platform_bool(STORAGE_FEATURE, &is_supported); + if (ret < 0) + is_supported = false; + + if (!is_supported) + return 0; + + ret = storage_get_external_memory_size(NULL); + assert_lt(ret, 0); + return 0; } //#endif //TIZENIOT