diff options
author | Vitaly Goldshteyn <goldvitaly@google.com> | 2024-03-13 05:34:23 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2024-03-13 05:35:12 -0700 |
commit | 321addf0511571e9910dc13a25221473656419d4 (patch) | |
tree | 59b07383b1e5b1f725d857e38ac96157c84f9826 /absl/container/internal/raw_hash_set_test.cc | |
parent | 038561296676d1cae4a3cee30f8c924befbb6083 (diff) | |
download | abseil-321addf0511571e9910dc13a25221473656419d4.tar.gz abseil-321addf0511571e9910dc13a25221473656419d4.tar.bz2 abseil-321addf0511571e9910dc13a25221473656419d4.zip |
Test that rehash(0) reduces capacity to minimum.
PiperOrigin-RevId: 615380243
Change-Id: I5400b40a6bc5ac52ece5d4fa6da7df9e4ff50855
Diffstat (limited to 'absl/container/internal/raw_hash_set_test.cc')
-rw-r--r-- | absl/container/internal/raw_hash_set_test.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/absl/container/internal/raw_hash_set_test.cc b/absl/container/internal/raw_hash_set_test.cc index 9180db59..66baeb64 100644 --- a/absl/container/internal/raw_hash_set_test.cc +++ b/absl/container/internal/raw_hash_set_test.cc @@ -885,12 +885,17 @@ TYPED_TEST_P(SmallTableResizeTest, ResizeReduceSmallTables) { for (size_t source_size = 0; source_size < 32; ++source_size) { for (size_t target_size = 0; target_size <= source_size; ++target_size) { TypeParam t; - t.reserve(source_size); size_t inserted_count = std::min<size_t>(source_size, 5); for (size_t i = 0; i < inserted_count; ++i) { t.insert(static_cast<int>(i)); } + const size_t minimum_capacity = t.capacity(); + t.reserve(source_size); t.rehash(target_size); + if (target_size == 0) { + EXPECT_EQ(t.capacity(), minimum_capacity) + << "rehash(0) must resize to the minimum capacity"; + } for (size_t i = 0; i < inserted_count; ++i) { EXPECT_TRUE(t.find(static_cast<int>(i)) != t.end()); EXPECT_EQ(*t.find(static_cast<int>(i)), static_cast<int>(i)); |