Skip Bare metal green tea test for storage related components or the components test cases which is based on RTOS

pull/11825/head
RAJKUMAR KANAGARAJ 2019-11-06 04:49:19 -08:00
parent e4164bee51
commit 8ecce14dad
9 changed files with 46 additions and 12 deletions

View File

@ -872,7 +872,9 @@ uint32_t SDBlockDevice::_go_idle_state()
if (R1_IDLE_STATE == response) { if (R1_IDLE_STATE == response) {
break; break;
} }
#if defined(MBED_CONF_RTOS_PRESENT)
rtos::ThisThread::sleep_for(1); rtos::ThisThread::sleep_for(1);
#endif
} }
return response; return response;
} }

View File

@ -13,6 +13,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
#if !defined(MBED_CONF_RTOS_PRESENT)
#error [NOT_SUPPORTED] filesystem test cases requires RTOS to run
#else
#include "mbed.h" #include "mbed.h"
#include "greentea-client/test_env.h" #include "greentea-client/test_env.h"
@ -207,3 +210,4 @@ int main()
{ {
return !Harness::run(specification); return !Harness::run(specification);
} }
#endif // !defined(MBED_CONF_RTOS_PRESENT)

View File

@ -14,6 +14,10 @@
* limitations under the License. * limitations under the License.
*/ */
#if !DEVICEKEY_ENABLED
#error [NOT_SUPPORTED] DeviceKey needs to be enabled for this test
#else
#include "DeviceKey.h" #include "DeviceKey.h"
#include "mbedtls/config.h" #include "mbedtls/config.h"
#include "utest/utest.h" #include "utest/utest.h"
@ -28,10 +32,6 @@
using namespace utest::v1; using namespace utest::v1;
using namespace mbed; using namespace mbed;
#if !DEVICEKEY_ENABLED
#error [NOT_SUPPORTED] DeviceKey needs to be enabled for this test
#else
#define MSG_VALUE_DUMMY "0" #define MSG_VALUE_DUMMY "0"
#define MSG_VALUE_LEN 32 #define MSG_VALUE_LEN 32
#define MSG_KEY_LEN 32 #define MSG_KEY_LEN 32

View File

@ -310,6 +310,7 @@ end:
static void test_thread_job() static void test_thread_job()
{ {
#if defined(MBED_CONF_RTOS_PRESENT)
static int thread_num = 0; static int thread_num = 0;
_mutex->lock(); _mutex->lock();
int block_num = thread_num++ % TEST_NUM_OF_THREADS; int block_num = thread_num++ % TEST_NUM_OF_THREADS;
@ -335,10 +336,12 @@ static void test_thread_job()
end: end:
delete[] read_block; delete[] read_block;
delete[] write_block; delete[] write_block;
#endif
} }
void test_multi_threads() void test_multi_threads()
{ {
#if defined(MBED_CONF_RTOS_PRESENT)
utest_printf("\nTest Multi Threaded Erase/Program/Read Starts..\n"); utest_printf("\nTest Multi Threaded Erase/Program/Read Starts..\n");
TEST_SKIP_UNLESS_MESSAGE(block_device != NULL, "no block device found."); TEST_SKIP_UNLESS_MESSAGE(block_device != NULL, "no block device found.");
@ -392,7 +395,7 @@ void test_multi_threads()
delete[] bd_thread; delete[] bd_thread;
} }
#endif
} }
void test_erase_functionality() void test_erase_functionality()
@ -727,7 +730,9 @@ typedef struct {
template_case_t template_cases[] = { template_case_t template_cases[] = {
{"Testing Init block device", test_init_bd, greentea_failure_handler}, {"Testing Init block device", test_init_bd, greentea_failure_handler},
{"Testing read write random blocks", test_random_program_read_erase, greentea_failure_handler}, {"Testing read write random blocks", test_random_program_read_erase, greentea_failure_handler},
#if defined(MBED_CONF_RTOS_PRESENT)
{"Testing multi threads erase program read", test_multi_threads, greentea_failure_handler}, {"Testing multi threads erase program read", test_multi_threads, greentea_failure_handler},
#endif
{"Testing contiguous erase, write and read", test_contiguous_erase_write_read, greentea_failure_handler}, {"Testing contiguous erase, write and read", test_contiguous_erase_write_read, greentea_failure_handler},
{"Testing BlockDevice erase functionality", test_erase_functionality, greentea_failure_handler}, {"Testing BlockDevice erase functionality", test_erase_functionality, greentea_failure_handler},
{"Testing program read small data sizes", test_program_read_small_data_sizes, greentea_failure_handler}, {"Testing program read small data sizes", test_program_read_small_data_sizes, greentea_failure_handler},

View File

@ -15,6 +15,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
#if !defined(MBED_CONF_RTOS_PRESENT)
#error [NOT_SUPPORTED] Kvstore API test cases requires RTOS to run
#else
#include "rtos/Thread.h" #include "rtos/Thread.h"
#include "mbed_trace.h" #include "mbed_trace.h"
@ -522,3 +525,4 @@ int main()
} }
#endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM) #endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM)
#endif // !defined(MBED_CONF_RTOS_PRESENT)

View File

@ -14,6 +14,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
#if !defined(MBED_CONF_RTOS_PRESENT)
#error [NOT_SUPPORTED] Kvstore API test cases requires RTOS to run
#else
#include "SecureStore.h" #include "SecureStore.h"
#include "TDBStore.h" #include "TDBStore.h"
@ -857,3 +860,4 @@ int main()
} }
#endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM) #endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM)
#endif // !defined(MBED_CONF_RTOS_PRESENT)

View File

@ -14,6 +14,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
#if !defined(MBED_CONF_RTOS_PRESENT)
#error [NOT_SUPPORTED] Kvstore API test cases requires RTOS to run
#else
#include "SecureStore.h" #include "SecureStore.h"
#include "TDBStore.h" #include "TDBStore.h"
@ -860,3 +863,4 @@ int main()
} }
#endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM) #endif // !defined(TARGET_K64F) && !defined(TARGET_ARM_FM)
#endif // !defined(MBED_CONF_RTOS_PRESENT)

View File

@ -15,7 +15,9 @@
* limitations under the License. * limitations under the License.
*/ */
#if defined(MBED_CONF_RTOS_PRESENT)
#include "Thread.h" #include "Thread.h"
#endif
#include "mbed_error.h" #include "mbed_error.h"
#include "greentea-client/test_env.h" #include "greentea-client/test_env.h"
#include "unity/unity.h" #include "unity/unity.h"
@ -33,10 +35,10 @@ static size_t actual_size = 0;
static const size_t buffer_size = 20; static const size_t buffer_size = 20;
static const int num_of_threads = 3; static const int num_of_threads = 3;
static const char num_of_keys = 3; static const char num_of_keys = 3;
#if defined(MBED_CONF_RTOS_PRESENT)
/* Forked 3 threads plus misc, so minimum (4 * OS_STACK_SIZE) heap are required. */ /* Forked 3 threads plus misc, so minimum (4 * OS_STACK_SIZE) heap are required. */
static const int heap_alloc_threshold_size = 4 * OS_STACK_SIZE; static const int heap_alloc_threshold_size = 4 * OS_STACK_SIZE;
#endif
static const char *keys[] = {"key1", "key2", "key3"}; static const char *keys[] = {"key1", "key2", "key3"};
static int init_res = MBED_ERROR_NOT_READY; static int init_res = MBED_ERROR_NOT_READY;
@ -67,6 +69,7 @@ static void parse_default_kv()
//init the blockdevice //init the blockdevice
static void kvstore_init() static void kvstore_init()
{ {
#if defined(MBED_CONF_RTOS_PRESENT)
uint8_t *dummy = new (std::nothrow) uint8_t[heap_alloc_threshold_size]; uint8_t *dummy = new (std::nothrow) uint8_t[heap_alloc_threshold_size];
TEST_SKIP_UNLESS_MESSAGE(dummy, "Not enough heap to run test"); TEST_SKIP_UNLESS_MESSAGE(dummy, "Not enough heap to run test");
delete[] dummy; delete[] dummy;
@ -76,6 +79,7 @@ static void kvstore_init()
init_res = kv_reset(def_kv); init_res = kv_reset(def_kv);
TEST_SKIP_UNLESS_MESSAGE(init_res != MBED_ERROR_UNSUPPORTED, "Unsupported configuration. Test skipped."); TEST_SKIP_UNLESS_MESSAGE(init_res != MBED_ERROR_UNSUPPORTED, "Unsupported configuration. Test skipped.");
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, init_res); TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, init_res);
#endif
} }
/*----------------set()------------------*/ /*----------------set()------------------*/
@ -144,6 +148,7 @@ static void test_thread_set(char *th_key)
//get several keys multithreaded //get several keys multithreaded
static void set_several_keys_multithreaded() static void set_several_keys_multithreaded()
{ {
#if defined(MBED_CONF_RTOS_PRESENT)
TEST_SKIP_UNLESS(!init_res); TEST_SKIP_UNLESS(!init_res);
rtos::Thread kvstore_thread[num_of_threads]; rtos::Thread kvstore_thread[num_of_threads];
osStatus threadStatus; osStatus threadStatus;
@ -169,6 +174,7 @@ static void set_several_keys_multithreaded()
res = kv_remove(keys[i]); res = kv_remove(keys[i]);
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res); TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
} }
#endif
} }
//set key "write once" and try to set it again //set key "write once" and try to set it again
@ -464,6 +470,7 @@ static void test_thread_get(const void *th_key)
//get several keys multithreaded //get several keys multithreaded
static void get_several_keys_multithreaded() static void get_several_keys_multithreaded()
{ {
#if defined(MBED_CONF_RTOS_PRESENT)
TEST_SKIP_UNLESS(!init_res); TEST_SKIP_UNLESS(!init_res);
int i = 0, res = 0; int i = 0, res = 0;
rtos::Thread kvstore_thread[num_of_threads]; rtos::Thread kvstore_thread[num_of_threads];
@ -489,6 +496,7 @@ static void get_several_keys_multithreaded()
res = kv_remove(keys[i]); res = kv_remove(keys[i]);
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res); TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
} }
#endif
} }
/*----------------remove()------------------*/ /*----------------remove()------------------*/
@ -924,7 +932,9 @@ Case cases[] = {
Case("set_buffer_null_size_not_zero", set_buffer_null_size_not_zero, greentea_failure_handler), Case("set_buffer_null_size_not_zero", set_buffer_null_size_not_zero, greentea_failure_handler),
Case("set_buffer_size_is_zero", set_buffer_size_is_zero, greentea_failure_handler), Case("set_buffer_size_is_zero", set_buffer_size_is_zero, greentea_failure_handler),
Case("set_same_key_several_time", set_same_key_several_time, greentea_failure_handler), Case("set_same_key_several_time", set_same_key_several_time, greentea_failure_handler),
#if defined(MBED_CONF_RTOS_PRESENT)
Case("set_several_keys_multithreaded", set_several_keys_multithreaded, greentea_failure_handler), Case("set_several_keys_multithreaded", set_several_keys_multithreaded, greentea_failure_handler),
#endif
Case("set_write_once_flag_try_set_twice", set_write_once_flag_try_set_twice, greentea_failure_handler), Case("set_write_once_flag_try_set_twice", set_write_once_flag_try_set_twice, greentea_failure_handler),
Case("set_write_once_flag_try_remove", set_write_once_flag_try_remove, greentea_failure_handler), Case("set_write_once_flag_try_remove", set_write_once_flag_try_remove, greentea_failure_handler),
Case("set_key_value_one_byte_size", set_key_value_one_byte_size, greentea_failure_handler), Case("set_key_value_one_byte_size", set_key_value_one_byte_size, greentea_failure_handler),
@ -944,8 +954,9 @@ Case cases[] = {
Case("get_non_existing_key", get_non_existing_key, greentea_failure_handler), Case("get_non_existing_key", get_non_existing_key, greentea_failure_handler),
Case("get_removed_key", get_removed_key, greentea_failure_handler), Case("get_removed_key", get_removed_key, greentea_failure_handler),
Case("get_key_that_was_set_twice", get_key_that_was_set_twice, greentea_failure_handler), Case("get_key_that_was_set_twice", get_key_that_was_set_twice, greentea_failure_handler),
#if defined(MBED_CONF_RTOS_PRESENT)
Case("get_several_keys_multithreaded", get_several_keys_multithreaded, greentea_failure_handler), Case("get_several_keys_multithreaded", get_several_keys_multithreaded, greentea_failure_handler),
#endif
Case("remove_key_null", remove_key_null, greentea_failure_handler), Case("remove_key_null", remove_key_null, greentea_failure_handler),
Case("remove_key_length_exceeds_max", remove_key_length_exceeds_max, greentea_failure_handler), Case("remove_key_length_exceeds_max", remove_key_length_exceeds_max, greentea_failure_handler),
Case("remove_non_existing_key", remove_non_existing_key, greentea_failure_handler), Case("remove_non_existing_key", remove_non_existing_key, greentea_failure_handler),

View File

@ -14,6 +14,10 @@
* limitations under the License. * limitations under the License.
*/ */
#if !NVSTORE_ENABLED
#error [NOT_SUPPORTED] NVSTORE needs to be enabled for this test
#else
#include "nvstore.h" #include "nvstore.h"
#ifdef MBED_CONF_RTOS_PRESENT #ifdef MBED_CONF_RTOS_PRESENT
#include "Thread.h" #include "Thread.h"
@ -27,10 +31,6 @@
#include <stdio.h> #include <stdio.h>
#include <algorithm> #include <algorithm>
#if !NVSTORE_ENABLED
#error [NOT_SUPPORTED] NVSTORE needs to be enabled for this test
#else
using namespace utest::v1; using namespace utest::v1;
static const uint16_t max_test_keys = 20; static const uint16_t max_test_keys = 20;