OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012 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 | |
5 #include "base/basictypes.h" | |
6 #include "testing/gtest/include/gtest/gtest.h" | |
7 #include "ui/gfx/insets.h" | |
8 #include "ui/gfx/shadow_value.h" | |
9 | |
10 namespace gfx { | |
11 | |
12 TEST(ShadowValueTest, GetMargin) { | |
13 const struct TestCase { | |
14 Insets expected_margin; | |
15 size_t shadow_count; | |
16 ShadowValue shadows[2]; | |
17 } kTestCases[] = { | |
18 { | |
19 Insets(), 0, {}, | |
20 }, | |
21 { | |
22 Insets(-2, -2, -2, -2), | |
23 1, | |
24 { ShadowValue(gfx::Point(0, 0), 4, 0), }, | |
25 }, | |
26 { | |
27 Insets(0, -1, -4, -3), | |
28 1, | |
29 { ShadowValue(gfx::Point(1, 2), 4, 0), }, | |
30 }, | |
31 { | |
32 Insets(-4, -3, 0, -1), | |
33 1, | |
34 { ShadowValue(gfx::Point(-1, -2), 4, 0), }, | |
35 }, | |
36 { | |
37 Insets(0, -1, -5, -4), | |
38 2, | |
39 { | |
40 ShadowValue(gfx::Point(1, 2), 4, 0), | |
41 ShadowValue(gfx::Point(2, 3), 4, 0), | |
42 }, | |
43 }, | |
44 { | |
45 Insets(-4, -3, -5, -4), | |
46 2, | |
47 { | |
48 ShadowValue(gfx::Point(-1, -2), 4, 0), | |
49 ShadowValue(gfx::Point(2, 3), 4, 0), | |
50 }, | |
51 }, | |
52 }; | |
53 | |
54 for (size_t i = 0; i < arraysize(kTestCases); ++i) { | |
55 Insets margin = ShadowValue::GetMargin( | |
56 ShadowValues(kTestCases[i].shadows, | |
57 kTestCases[i].shadows + kTestCases[i].shadow_count)); | |
58 | |
59 EXPECT_EQ(kTestCases[i].expected_margin, margin) << " i=" << i; | |
60 } | |
61 } | |
62 | |
63 } // namespace gfx | |
OLD | NEW |