Skip to content

Commit 6abb58c

Browse files
author
Jarno Lamsa
committed
Add new unittests for TDBStore
Add tests for iterators and reserved data.
1 parent 8e6b9ee commit 6abb58c

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

UNITTESTS/moduletests/storage/kvstore/TDBStore/moduletest.cpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,28 @@ TEST_F(TDBStoreModuleTest, corrupted_set_deinit_init_get)
124124
EXPECT_EQ(heap.deinit(), MBED_SUCCESS);
125125
delete[] block;
126126
}
127+
128+
TEST_F(TDBStoreModuleTest, set_multiple_iterate)
129+
{
130+
char buf[100];
131+
KVStore::iterator_t iterator;
132+
EXPECT_EQ(tdb.set("primary_key", "data", 5, 0), MBED_SUCCESS);
133+
EXPECT_EQ(tdb.set("primary_second_key", "value", 6, 0), MBED_SUCCESS);
134+
EXPECT_EQ(tdb.iterator_open(&iterator, "primary"), MBED_SUCCESS);
135+
EXPECT_EQ(tdb.iterator_next(iterator, buf, 100), MBED_SUCCESS);
136+
EXPECT_EQ(tdb.iterator_next(iterator, buf, 100), MBED_SUCCESS);
137+
EXPECT_EQ(tdb.iterator_next(iterator, buf, 100), MBED_ERROR_ITEM_NOT_FOUND);
138+
EXPECT_EQ(tdb.iterator_close(iterator), MBED_SUCCESS);
139+
}
140+
141+
TEST_F(TDBStoreModuleTest, reserved_data_set_get)
142+
{
143+
char reserved_key[] = "value";
144+
char buf[64];
145+
size_t size;
146+
EXPECT_EQ(tdb.reserved_data_set(reserved_key, 6), MBED_SUCCESS);
147+
EXPECT_EQ(tdb.reserved_data_get(buf, 64, &size), MBED_SUCCESS);
148+
EXPECT_STREQ("value", buf);
149+
EXPECT_EQ(size, 6);
150+
EXPECT_EQ(tdb.reserved_data_set(reserved_key, 6), MBED_ERROR_WRITE_FAILED);
151+
}

0 commit comments

Comments
 (0)