Skip to content

Commit 53442a7

Browse files
author
Seppo Takalo
committed
Greenteatests: Validate KVStore content when WRITE_ONCE flag is set.
1 parent f542e05 commit 53442a7

File tree

1 file changed

+18
-5
lines changed
  • features/storage/TESTS/kvstore/general_tests_phase_1

1 file changed

+18
-5
lines changed

features/storage/TESTS/kvstore/general_tests_phase_1/main.cpp

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -277,33 +277,46 @@ static void set_several_keys_multithreaded()
277277
//set key "write once" and try to set it again
278278
static void set_write_once_flag_try_set_twice()
279279
{
280+
char buf[10];
281+
size_t len;
280282
TEST_SKIP_UNLESS(kvstore != NULL);
281283

282-
int res = kvstore->set(key, data, data_size, KVStore::WRITE_ONCE_FLAG);
284+
int res = kvstore->set(key, "ONCE", 5, KVStore::WRITE_ONCE_FLAG);
283285
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
284286

285-
res = kvstore->set(key, data, data_size, KVStore::WRITE_ONCE_FLAG);
287+
res = kvstore->set(key, "TWICE", 6, KVStore::WRITE_ONCE_FLAG);
286288
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_ERROR_WRITE_PROTECTED, res);
287289

290+
res = kvstore->get(key, buf, 10, &len);
291+
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
292+
TEST_ASSERT_EQUAL(len, 5);
293+
TEST_ASSERT_EQUAL_STRING_LEN(buf, "ONCE", 5);
294+
288295
res = kvstore->reset();
289296
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
290297
}
291298

292299
//set key "write once" and try to remove it
293300
static void set_write_once_flag_try_remove()
294301
{
295-
int res;
302+
char buf[20];
303+
size_t len;
296304
TEST_SKIP_UNLESS(kvstore != NULL);
297305

298-
res = kvstore->reset();
306+
int res = kvstore->set(key, "TO_BE_REMOVED", 14, KVStore::WRITE_ONCE_FLAG);
299307
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
300308

301-
res = kvstore->set(key, data, data_size, KVStore::WRITE_ONCE_FLAG);
309+
res = kvstore->get(key, buf, 20, &len);
302310
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
311+
TEST_ASSERT_EQUAL(len, 14);
312+
TEST_ASSERT_EQUAL_STRING_LEN(buf, "TO_BE_REMOVED", 14);
303313

304314
res = kvstore->remove(key);
305315
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_ERROR_WRITE_PROTECTED, res);
306316

317+
res = kvstore->get(key, buf, 20, &len);
318+
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
319+
307320
res = kvstore->reset();
308321
TEST_ASSERT_EQUAL_ERROR_CODE(MBED_SUCCESS, res);
309322
}

0 commit comments

Comments
 (0)