| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stddef.h> | 5 #include <stddef.h> |
| 6 | 6 |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 #include <limits> | 8 #include <limits> |
| 9 | 9 |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| 11 #include "testing/gtest/include/gtest/gtest.h" | 11 #include "testing/gtest/include/gtest/gtest.h" |
| 12 #include "ui/gfx/geometry/scroll_offset.h" | 12 #include "ui/gfx/geometry/scroll_offset.h" |
| 13 | 13 |
| 14 namespace gfx { | 14 namespace gfx { |
| 15 | 15 |
| 16 TEST(ScrollOffsetTest, IsZero) { | 16 TEST(ScrollOffsetTest, IsZero) { |
| 17 ScrollOffset zero(0, 0); | 17 ScrollOffset zero(0, 0); |
| 18 ScrollOffset nonzero(0.1, -0.1); | 18 ScrollOffset nonzero(0.1f, -0.1f); |
| 19 | 19 |
| 20 EXPECT_TRUE(zero.IsZero()); | 20 EXPECT_TRUE(zero.IsZero()); |
| 21 EXPECT_FALSE(nonzero.IsZero()); | 21 EXPECT_FALSE(nonzero.IsZero()); |
| 22 } | 22 } |
| 23 | 23 |
| 24 TEST(ScrollOffsetTest, Add) { | 24 TEST(ScrollOffsetTest, Add) { |
| 25 ScrollOffset f1(3.1, 5.1); | 25 ScrollOffset f1(3.1f, 5.1f); |
| 26 ScrollOffset f2(4.3, -1.3); | 26 ScrollOffset f2(4.3f, -1.3f); |
| 27 | 27 |
| 28 const struct { | 28 const struct { |
| 29 ScrollOffset expected; | 29 ScrollOffset expected; |
| 30 ScrollOffset actual; | 30 ScrollOffset actual; |
| 31 } scroll_offset_tests[] = { | 31 } scroll_offset_tests[] = { |
| 32 { ScrollOffset(3.1, 5.1), f1 + ScrollOffset() }, | 32 { ScrollOffset(3.1f, 5.1f), f1 + ScrollOffset() }, |
| 33 { ScrollOffset(3.1 + 4.3, 5.1f - 1.3), f1 + f2 }, | 33 { ScrollOffset(3.1f + 4.3f, 5.1f - 1.3f), f1 + f2 }, |
| 34 { ScrollOffset(3.1 - 4.3, 5.1f + 1.3), f1 - f2 } | 34 { ScrollOffset(3.1f - 4.3f, 5.1f + 1.3f), f1 - f2 } |
| 35 }; | 35 }; |
| 36 | 36 |
| 37 for (size_t i = 0; i < arraysize(scroll_offset_tests); ++i) | 37 for (size_t i = 0; i < arraysize(scroll_offset_tests); ++i) |
| 38 EXPECT_EQ(scroll_offset_tests[i].expected.ToString(), | 38 EXPECT_EQ(scroll_offset_tests[i].expected.ToString(), |
| 39 scroll_offset_tests[i].actual.ToString()); | 39 scroll_offset_tests[i].actual.ToString()); |
| 40 } | 40 } |
| 41 | 41 |
| 42 TEST(ScrollOffsetTest, Negative) { | 42 TEST(ScrollOffsetTest, Negative) { |
| 43 const struct { | 43 const struct { |
| 44 ScrollOffset expected; | 44 ScrollOffset expected; |
| 45 ScrollOffset actual; | 45 ScrollOffset actual; |
| 46 } scroll_offset_tests[] = { | 46 } scroll_offset_tests[] = { |
| 47 { ScrollOffset(-0.3, -0.3), -ScrollOffset(0.3, 0.3) }, | 47 { ScrollOffset(-0.3f, -0.3f), -ScrollOffset(0.3f, 0.3f) }, |
| 48 { ScrollOffset(0.3, 0.3), -ScrollOffset(-0.3, -0.3) }, | 48 { ScrollOffset(0.3f, 0.3f), -ScrollOffset(-0.3f, -0.3f) }, |
| 49 { ScrollOffset(-0.3, 0.3), -ScrollOffset(0.3, -0.3) }, | 49 { ScrollOffset(-0.3f, 0.3f), -ScrollOffset(0.3f, -0.3f) }, |
| 50 { ScrollOffset(0.3, -0.3), -ScrollOffset(-0.3, 0.3) } | 50 { ScrollOffset(0.3f, -0.3f), -ScrollOffset(-0.3f, 0.3f) } |
| 51 }; | 51 }; |
| 52 | 52 |
| 53 for (size_t i = 0; i < arraysize(scroll_offset_tests); ++i) | 53 for (size_t i = 0; i < arraysize(scroll_offset_tests); ++i) |
| 54 EXPECT_EQ(scroll_offset_tests[i].expected.ToString(), | 54 EXPECT_EQ(scroll_offset_tests[i].expected.ToString(), |
| 55 scroll_offset_tests[i].actual.ToString()); | 55 scroll_offset_tests[i].actual.ToString()); |
| 56 } | 56 } |
| 57 | 57 |
| 58 TEST(ScrollOffsetTest, Scale) { | 58 TEST(ScrollOffsetTest, Scale) { |
| 59 double double_values[][4] = { | 59 float float_values[][4] = { |
| 60 { 4.5, 1.2, 3.3, 5.6 }, | 60 { 4.5f, 1.2f, 3.3f, 5.6f }, |
| 61 { 4.5, -1.2, 3.3, 5.6 }, | 61 { 4.5f, -1.2f, 3.3f, 5.6f }, |
| 62 { 4.5, 1.2, 3.3, -5.6 }, | 62 { 4.5f, 1.2f, 3.3f, -5.6f }, |
| 63 { 4.5, 1.2, -3.3, -5.6 }, | 63 { 4.5f, 1.2f, -3.3f, -5.6f }, |
| 64 { -4.5, 1.2, 3.3, 5.6 }, | 64 { -4.5f, 1.2f, 3.3f, 5.6f }, |
| 65 { -4.5, 1.2, 0, 5.6 }, | 65 { -4.5f, 1.2f, 0, 5.6f }, |
| 66 { -4.5, 1.2, 3.3, 0 }, | 66 { -4.5f, 1.2f, 3.3f, 0 }, |
| 67 { 4.5, 0, 3.3, 5.6 }, | 67 { 4.5f, 0, 3.3f, 5.6f }, |
| 68 { 0, 1.2, 3.3, 5.6 } | 68 { 0, 1.2f, 3.3f, 5.6f } |
| 69 }; | 69 }; |
| 70 | 70 |
| 71 for (size_t i = 0; i < arraysize(double_values); ++i) { | 71 for (size_t i = 0; i < arraysize(float_values); ++i) { |
| 72 ScrollOffset v(double_values[i][0], double_values[i][1]); | 72 ScrollOffset v(float_values[i][0], float_values[i][1]); |
| 73 v.Scale(double_values[i][2], double_values[i][3]); | 73 v.Scale(float_values[i][2], float_values[i][3]); |
| 74 EXPECT_EQ(v.x(), double_values[i][0] * double_values[i][2]); | 74 EXPECT_EQ(v.x(), float_values[i][0] * float_values[i][2]); |
| 75 EXPECT_EQ(v.y(), double_values[i][1] * double_values[i][3]); | 75 EXPECT_EQ(v.y(), float_values[i][1] * float_values[i][3]); |
| 76 } | 76 } |
| 77 | 77 |
| 78 double single_values[][3] = { | 78 float single_values[][3] = { |
| 79 { 4.5, 1.2, 3.3 }, | 79 { 4.5f, 1.2f, 3.3f }, |
| 80 { 4.5, -1.2, 3.3 }, | 80 { 4.5f, -1.2f, 3.3f }, |
| 81 { 4.5, 1.2, 3.3 }, | 81 { 4.5f, 1.2f, 3.3f }, |
| 82 { 4.5, 1.2, -3.3 }, | 82 { 4.5f, 1.2f, -3.3f }, |
| 83 { -4.5, 1.2, 3.3 }, | 83 { -4.5f, 1.2f, 3.3f }, |
| 84 { -4.5, 1.2, 0 }, | 84 { -4.5f, 1.2f, 0 }, |
| 85 { -4.5, 1.2, 3.3 }, | 85 { -4.5f, 1.2f, 3.3f }, |
| 86 { 4.5, 0, 3.3 }, | 86 { 4.5f, 0, 3.3f }, |
| 87 { 0, 1.2, 3.3 } | 87 { 0, 1.2f, 3.3f } |
| 88 }; | 88 }; |
| 89 | 89 |
| 90 for (size_t i = 0; i < arraysize(single_values); ++i) { | 90 for (size_t i = 0; i < arraysize(single_values); ++i) { |
| 91 ScrollOffset v(single_values[i][0], single_values[i][1]); | 91 ScrollOffset v(single_values[i][0], single_values[i][1]); |
| 92 v.Scale(single_values[i][2]); | 92 v.Scale(single_values[i][2]); |
| 93 EXPECT_EQ(v.x(), single_values[i][0] * single_values[i][2]); | 93 EXPECT_EQ(v.x(), single_values[i][0] * single_values[i][2]); |
| 94 EXPECT_EQ(v.y(), single_values[i][1] * single_values[i][2]); | 94 EXPECT_EQ(v.y(), single_values[i][1] * single_values[i][2]); |
| 95 } | 95 } |
| 96 } | 96 } |
| 97 | 97 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 115 EXPECT_EQ(ScrollOffset(8.5, 10.5).ToString(), a.ToString()); | 115 EXPECT_EQ(ScrollOffset(8.5, 10.5).ToString(), a.ToString()); |
| 116 a.SetToMin(ScrollOffset(11.5, 9.5)); | 116 a.SetToMin(ScrollOffset(11.5, 9.5)); |
| 117 EXPECT_EQ(ScrollOffset(8.5, 9.5).ToString(), a.ToString()); | 117 EXPECT_EQ(ScrollOffset(8.5, 9.5).ToString(), a.ToString()); |
| 118 a.SetToMin(ScrollOffset(7.5, 11.5)); | 118 a.SetToMin(ScrollOffset(7.5, 11.5)); |
| 119 EXPECT_EQ(ScrollOffset(7.5, 9.5).ToString(), a.ToString()); | 119 EXPECT_EQ(ScrollOffset(7.5, 9.5).ToString(), a.ToString()); |
| 120 a.SetToMin(ScrollOffset(3.5, 5.5)); | 120 a.SetToMin(ScrollOffset(3.5, 5.5)); |
| 121 EXPECT_EQ(ScrollOffset(3.5, 5.5).ToString(), a.ToString()); | 121 EXPECT_EQ(ScrollOffset(3.5, 5.5).ToString(), a.ToString()); |
| 122 } | 122 } |
| 123 | 123 |
| 124 } // namespace gfx | 124 } // namespace gfx |
| OLD | NEW |