table: test erase functions

This commit is contained in:
Michele Caini
2024-05-03 11:09:32 +02:00
parent b6a71dbdbe
commit 97a50c23a9

View File

@@ -377,6 +377,37 @@ TEST(Table, Emplace) {
ASSERT_EQ(table.emplace(3, 'c'), std::make_tuple(3, 'c'));
}
TEST(Table, Erase) {
entt::table<int, char> table;
table.emplace(3, 'c');
table.emplace(0, '\0');
table.erase(table.begin());
ASSERT_EQ(table.size(), 1u);
ASSERT_EQ(table[0u], std::make_tuple(0, '\0'));
table.emplace(3, 'c');
table.erase(1u);
ASSERT_EQ(table.size(), 1u);
ASSERT_EQ(table[0u], std::make_tuple(0, '\0'));
table.erase(0u);
ASSERT_EQ(table.size(), 0u);
}
TEST(TableDeathTest, Erase) {
entt::table<int, char> table;
ASSERT_DEATH(table.erase(0u), "");
table.emplace(3, 'c');
ASSERT_DEATH(table.erase(1u), "");
}
TEST(Table, Indexing) {
entt::table<int, char> table;