ambient_util_unittest.cc 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. // Copyright 2022 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 "ash/ambient/util/ambient_util.h"
  5. #include <string>
  6. #include "testing/gmock/include/gmock/gmock.h"
  7. #include "testing/gtest/include/gtest/gtest.h"
  8. namespace ash {
  9. namespace ambient {
  10. namespace util {
  11. namespace {
  12. using ::testing::Eq;
  13. using ::testing::Lt;
  14. using ::testing::Not;
  15. } // namespace
  16. TEST(AmbientUtilTest, ParseDynamicLottieAssetId) {
  17. ParsedDynamicAssetId output;
  18. EXPECT_FALSE(ParseDynamicLottieAssetId("StaticAsset", output));
  19. EXPECT_FALSE(ParseDynamicLottieAssetId("_CrOS_UnknownAsset", output));
  20. ASSERT_TRUE(ParseDynamicLottieAssetId("_CrOS_Photo_PositionA_1", output));
  21. EXPECT_THAT(output.position_id, Eq("A"));
  22. EXPECT_THAT(output.idx, Eq(1));
  23. ASSERT_TRUE(ParseDynamicLottieAssetId("_CrOS_Photo_PositionB_1", output));
  24. EXPECT_THAT(output.position_id, Eq("B"));
  25. EXPECT_THAT(output.idx, Eq(1));
  26. ASSERT_TRUE(
  27. ParseDynamicLottieAssetId("_CrOS_Photo_PositionTopLeft_1", output));
  28. EXPECT_THAT(output.position_id, Eq("TopLeft"));
  29. EXPECT_THAT(output.idx, Eq(1));
  30. ASSERT_TRUE(
  31. ParseDynamicLottieAssetId("_CrOS_Photo_PositionTopRight_2", output));
  32. EXPECT_THAT(output.position_id, Eq("TopRight"));
  33. EXPECT_THAT(output.idx, Eq(2));
  34. ASSERT_TRUE(ParseDynamicLottieAssetId("_CrOS_Photo_PositionA_1.png", output));
  35. EXPECT_THAT(output.position_id, Eq("A"));
  36. EXPECT_THAT(output.idx, Eq(1));
  37. }
  38. TEST(AmbientUtilTest, CompareDynamicLottieAssetId) {
  39. EXPECT_THAT(ParsedDynamicAssetId({"A", 1}),
  40. Lt(ParsedDynamicAssetId({"A", 2})));
  41. EXPECT_THAT(ParsedDynamicAssetId({"A", 2}),
  42. Not(Lt(ParsedDynamicAssetId({"A", 1}))));
  43. EXPECT_THAT(ParsedDynamicAssetId({"A", 1}),
  44. Lt(ParsedDynamicAssetId({"B", 1})));
  45. EXPECT_THAT(ParsedDynamicAssetId({"B", 1}),
  46. Not(Lt(ParsedDynamicAssetId({"A", 1}))));
  47. EXPECT_THAT(ParsedDynamicAssetId({"A", 1}),
  48. Not(Lt(ParsedDynamicAssetId({"A", 1}))));
  49. }
  50. } // namespace util
  51. } // namespace ambient
  52. } // namespace ash