ui_string_overrider_unittest.cc 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. // Copyright 2014 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "components/variations/service/ui_string_overrider.h"
  5. #include <stddef.h>
  6. #include <stdint.h>
  7. #include "testing/gtest/include/gtest/gtest.h"
  8. namespace variations {
  9. namespace {
  10. const size_t kNumResources = 4;
  11. const uint32_t kResourceHashes[] = {
  12. 301430091U, // IDS_BOOKMARKS_NO_ITEMS
  13. 2654138887U, // IDS_BOOKMARK_BAR_IMPORT_LINK
  14. 2894469061U, // IDS_BOOKMARK_GROUP_FROM_IE
  15. 3847176170U, // IDS_BOOKMARK_GROUP_FROM_FIREFOX
  16. };
  17. const int kResourceIndices[] = {
  18. 12500, // IDS_BOOKMARKS_NO_ITEMS
  19. 12501, // IDS_BOOKMARK_BAR_IMPORT_LINK
  20. 12502, // IDS_BOOKMARK_GROUP_FROM_IE
  21. 12503, // IDS_BOOKMARK_GROUP_FROM_FIREFOX
  22. };
  23. } // namespace
  24. class UIStringOverriderTest : public ::testing::Test {
  25. public:
  26. UIStringOverriderTest()
  27. : provider_(kResourceHashes, kResourceIndices, kNumResources) {}
  28. UIStringOverriderTest(const UIStringOverriderTest&) = delete;
  29. UIStringOverriderTest& operator=(const UIStringOverriderTest&) = delete;
  30. int GetResourceIndex(uint32_t hash) {
  31. return provider_.GetResourceIndex(hash);
  32. }
  33. private:
  34. UIStringOverrider provider_;
  35. };
  36. TEST_F(UIStringOverriderTest, LookupNotFound) {
  37. EXPECT_EQ(-1, GetResourceIndex(0));
  38. EXPECT_EQ(-1, GetResourceIndex(kResourceHashes[kNumResources - 1] + 1));
  39. // Lookup a hash that shouldn't exist.
  40. // 3847176171U is 1 + the hash for IDS_BOOKMARK_GROUP_FROM_FIREFOX.
  41. EXPECT_EQ(-1, GetResourceIndex(3847176171U));
  42. }
  43. TEST_F(UIStringOverriderTest, LookupFound) {
  44. for (size_t i = 0; i < kNumResources; ++i)
  45. EXPECT_EQ(kResourceIndices[i], GetResourceIndex(kResourceHashes[i]));
  46. }
  47. } // namespace variations