unordered_map_test.cc 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // Copyright 2018 The Abseil Authors.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // https://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. #include <memory>
  15. #include <unordered_map>
  16. #include "absl/container/internal/unordered_map_constructor_test.h"
  17. #include "absl/container/internal/unordered_map_lookup_test.h"
  18. #include "absl/container/internal/unordered_map_members_test.h"
  19. #include "absl/container/internal/unordered_map_modifiers_test.h"
  20. namespace absl {
  21. ABSL_NAMESPACE_BEGIN
  22. namespace container_internal {
  23. namespace {
  24. using MapTypes = ::testing::Types<
  25. std::unordered_map<int, int, StatefulTestingHash, StatefulTestingEqual,
  26. Alloc<std::pair<const int, int>>>,
  27. std::unordered_map<std::string, std::string, StatefulTestingHash,
  28. StatefulTestingEqual,
  29. Alloc<std::pair<const std::string, std::string>>>>;
  30. INSTANTIATE_TYPED_TEST_SUITE_P(UnorderedMap, ConstructorTest, MapTypes);
  31. INSTANTIATE_TYPED_TEST_SUITE_P(UnorderedMap, LookupTest, MapTypes);
  32. INSTANTIATE_TYPED_TEST_SUITE_P(UnorderedMap, MembersTest, MapTypes);
  33. INSTANTIATE_TYPED_TEST_SUITE_P(UnorderedMap, ModifiersTest, MapTypes);
  34. using UniquePtrMapTypes = ::testing::Types<std::unordered_map<
  35. int, std::unique_ptr<int>, StatefulTestingHash, StatefulTestingEqual,
  36. Alloc<std::pair<const int, std::unique_ptr<int>>>>>;
  37. INSTANTIATE_TYPED_TEST_SUITE_P(UnorderedMap, UniquePtrModifiersTest,
  38. UniquePtrMapTypes);
  39. } // namespace
  40. } // namespace container_internal
  41. ABSL_NAMESPACE_END
  42. } // namespace absl