Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(140)

Side by Side Diff: cc/animation/animation_unittest.cc

Issue 231133002: CC::Animations should use TimeTicks & TimeDelta to represent time (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Code Refactored as per the comments. Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 "cc/animation/animation.h" 5 #include "cc/animation/animation.h"
6 6
7 #include "cc/test/animation_test_common.h" 7 #include "cc/test/animation_test_common.h"
8 #include "testing/gmock/include/gmock/gmock.h" 8 #include "testing/gmock/include/gmock/gmock.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 namespace cc { 11 namespace cc {
12 namespace { 12 namespace {
13 13
14 using base::TimeTicks;
15 using base::TimeDelta;
16
14 scoped_ptr<Animation> CreateAnimation(int iterations, double duration) { 17 scoped_ptr<Animation> CreateAnimation(int iterations, double duration) {
15 scoped_ptr<Animation> to_return(Animation::Create( 18 scoped_ptr<Animation> to_return(Animation::Create(
16 make_scoped_ptr( 19 make_scoped_ptr(
17 new FakeFloatAnimationCurve(duration)).PassAs<AnimationCurve>(), 20 new FakeFloatAnimationCurve(duration)).PassAs<AnimationCurve>(),
18 0, 21 0,
19 1, 22 1,
20 Animation::Opacity)); 23 Animation::Opacity));
21 to_return->set_iterations(iterations); 24 to_return->set_iterations(iterations);
22 return to_return.Pass(); 25 return to_return.Pass();
23 } 26 }
24 27
25 scoped_ptr<Animation> CreateAnimation(int iterations) { 28 scoped_ptr<Animation> CreateAnimation(int iterations) {
26 return CreateAnimation(iterations, 1); 29 return CreateAnimation(iterations, 1);
27 } 30 }
28 31
29 TEST(AnimationTest, TrimTimeZeroIterations) { 32 TEST(AnimationTest, TrimTimeZeroIterations) {
30 scoped_ptr<Animation> anim(CreateAnimation(0)); 33 scoped_ptr<Animation> anim(CreateAnimation(0));
31 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(-1.0)); 34 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
32 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 35 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
33 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(1.0)); 36 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
34 } 37 }
35 38
36 TEST(AnimationTest, TrimTimeOneIteration) { 39 TEST(AnimationTest, TrimTimeOneIteration) {
37 scoped_ptr<Animation> anim(CreateAnimation(1)); 40 scoped_ptr<Animation> anim(CreateAnimation(1));
38 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(-1.0)); 41 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
39 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 42 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
40 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1.0)); 43 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
41 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(2.0)); 44 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(2.0)));
42 } 45 }
43 46
44 TEST(AnimationTest, TrimTimeInfiniteIterations) { 47 TEST(AnimationTest, TrimTimeInfiniteIterations) {
45 scoped_ptr<Animation> anim(CreateAnimation(-1)); 48 scoped_ptr<Animation> anim(CreateAnimation(-1));
46 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 49 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
47 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(0.5)); 50 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.5)));
48 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(1.0)); 51 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
49 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(1.5)); 52 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.5)));
50 } 53 }
51 54
52 TEST(AnimationTest, TrimTimeAlternating) { 55 TEST(AnimationTest, TrimTimeAlternating) {
53 scoped_ptr<Animation> anim(CreateAnimation(-1)); 56 scoped_ptr<Animation> anim(CreateAnimation(-1));
54 anim->set_alternates_direction(true); 57 anim->set_alternates_direction(true);
55 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 58 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
56 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(0.5)); 59 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.5)));
57 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1.0)); 60 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
58 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(1.25)); 61 EXPECT_EQ(0.75,
62 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.25)));
59 } 63 }
60 64
61 TEST(AnimationTest, TrimTimeStartTime) { 65 TEST(AnimationTest, TrimTimeStartTime) {
62 scoped_ptr<Animation> anim(CreateAnimation(1)); 66 scoped_ptr<Animation> anim(CreateAnimation(1));
63 anim->set_start_time(4); 67 anim->set_start_time(TimeTicks::FromSeconds(4));
64 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 68 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
65 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(4.0)); 69 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(4.0)));
66 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(4.5)); 70 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(4.5)));
67 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(5.0)); 71 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(5.0)));
68 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(6.0)); 72 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(6.0)));
69 } 73 }
70 74
71 TEST(AnimationTest, TrimTimeTimeOffset) { 75 TEST(AnimationTest, TrimTimeTimeOffset) {
72 scoped_ptr<Animation> anim(CreateAnimation(1)); 76 scoped_ptr<Animation> anim(CreateAnimation(1));
73 anim->set_time_offset(4); 77 anim->set_time_offset(TimeDelta::FromMilliseconds(4000));
74 anim->set_start_time(4); 78 anim->set_start_time(TimeTicks::FromSeconds(4));
75 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 79 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
76 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(0.5)); 80 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.5)));
77 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1.0)); 81 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
78 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1.0)); 82 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
79 } 83 }
80 84
81 TEST(AnimationTest, TrimTimeNegativeTimeOffset) { 85 TEST(AnimationTest, TrimTimeNegativeTimeOffset) {
82 scoped_ptr<Animation> anim(CreateAnimation(1)); 86 scoped_ptr<Animation> anim(CreateAnimation(1));
83 anim->set_time_offset(-4); 87 anim->set_time_offset(TimeDelta::FromMilliseconds(-4000));
84 88
85 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 89 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
86 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(4.0)); 90 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(4.0)));
87 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(4.5)); 91 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(4.5)));
88 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(5.0)); 92 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(5.0)));
89 } 93 }
90 94
91 TEST(AnimationTest, TrimTimePauseResume) { 95 TEST(AnimationTest, TrimTimePauseResume) {
92 scoped_ptr<Animation> anim(CreateAnimation(1)); 96 scoped_ptr<Animation> anim(CreateAnimation(1));
93 anim->SetRunState(Animation::Running, 0.0); 97 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
94 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 98 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
95 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(0.5)); 99 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.5)));
96 anim->SetRunState(Animation::Paused, 0.5); 100 anim->SetRunState(Animation::Paused, TimeTicks::FromSeconds(0.5));
97 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(1024.0)); 101 EXPECT_EQ(0.5,
98 anim->SetRunState(Animation::Running, 1024.0); 102 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.0)));
99 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(1024.0)); 103 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(1024.0));
100 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1024.5)); 104 EXPECT_EQ(0.5,
105 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.0)));
106 EXPECT_EQ(1,
107 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.5)));
101 } 108 }
102 109
103 TEST(AnimationTest, TrimTimeSuspendResume) { 110 TEST(AnimationTest, TrimTimeSuspendResume) {
104 scoped_ptr<Animation> anim(CreateAnimation(1)); 111 scoped_ptr<Animation> anim(CreateAnimation(1));
105 anim->SetRunState(Animation::Running, 0.0); 112 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
106 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 113 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
107 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(0.5)); 114 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.5)));
108 anim->Suspend(0.5); 115 anim->Suspend(TimeTicks::FromSeconds(0.5));
109 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(1024.0)); 116 EXPECT_EQ(0.5,
110 anim->Resume(1024); 117 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.0)));
111 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(1024.0)); 118 anim->Resume(TimeTicks::FromSeconds(1024));
112 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(1024.5)); 119 EXPECT_EQ(0.5,
120 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.0)));
121 EXPECT_EQ(1,
122 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1024.5)));
113 } 123 }
114 124
115 TEST(AnimationTest, TrimTimeZeroDuration) { 125 TEST(AnimationTest, TrimTimeZeroDuration) {
116 scoped_ptr<Animation> anim(CreateAnimation(0, 0)); 126 scoped_ptr<Animation> anim(CreateAnimation(0, 0));
117 anim->SetRunState(Animation::Running, 0.0); 127 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
118 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(-1.0)); 128 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
119 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(0.0)); 129 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
120 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(1.0)); 130 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
121 } 131 }
122 132
123 TEST(AnimationTest, TrimTimeStarting) { 133 TEST(AnimationTest, TrimTimeStarting) {
124 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0)); 134 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0));
125 anim->SetRunState(Animation::Starting, 0.0); 135 anim->SetRunState(Animation::Starting, TimeTicks::FromSeconds(0.0));
126 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(-1.0)); 136 EXPECT_EQ(0.0,
127 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(0.0)); 137 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
128 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(1.0)); 138 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
129 anim->set_time_offset(2.0); 139 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
130 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(-1.0)); 140 anim->set_time_offset(TimeDelta::FromMilliseconds(2000));
131 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(0.0)); 141 EXPECT_EQ(2.0,
132 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(1.0)); 142 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
133 anim->set_start_time(1.0); 143 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
134 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(-1.0)); 144 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
135 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(0.0)); 145 anim->set_start_time(TimeTicks::FromSeconds(1.0));
136 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(1.0)); 146 EXPECT_EQ(0.0,
137 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(2.0)); 147 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
148 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
149 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
150 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(2.0)));
138 } 151 }
139 152
140 TEST(AnimationTest, TrimTimeNeedsSynchronizedStartTime) { 153 TEST(AnimationTest, TrimTimeNeedsSynchronizedStartTime) {
141 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0)); 154 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0));
142 anim->SetRunState(Animation::Running, 0.0); 155 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
143 anim->set_needs_synchronized_start_time(true); 156 anim->set_needs_synchronized_start_time(true);
144 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(-1.0)); 157 EXPECT_EQ(0.0,
145 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(0.0)); 158 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
146 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(1.0)); 159 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
147 anim->set_time_offset(2.0); 160 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
148 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(-1.0)); 161 anim->set_time_offset(TimeDelta::FromMilliseconds(2000));
149 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(0.0)); 162 EXPECT_EQ(2.0,
150 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(1.0)); 163 anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(-1.0)));
151 anim->set_start_time(1.0); 164 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
165 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
166 anim->set_start_time(TimeTicks::FromSeconds(1.0));
152 anim->set_needs_synchronized_start_time(false); 167 anim->set_needs_synchronized_start_time(false);
153 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(0.0)); 168 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(0.0)));
154 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(1.0)); 169 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(1.0)));
155 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(2.0)); 170 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TimeTicks::FromSeconds(2.0)));
156 } 171 }
157 172
158 TEST(AnimationTest, IsFinishedAtZeroIterations) { 173 TEST(AnimationTest, IsFinishedAtZeroIterations) {
159 scoped_ptr<Animation> anim(CreateAnimation(0)); 174 scoped_ptr<Animation> anim(CreateAnimation(0));
160 anim->SetRunState(Animation::Running, 0.0); 175 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
161 EXPECT_FALSE(anim->IsFinishedAt(-1.0)); 176 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(-1.0)));
162 EXPECT_TRUE(anim->IsFinishedAt(0.0)); 177 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
163 EXPECT_TRUE(anim->IsFinishedAt(1.0)); 178 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.0)));
164 } 179 }
165 180
166 TEST(AnimationTest, IsFinishedAtOneIteration) { 181 TEST(AnimationTest, IsFinishedAtOneIteration) {
167 scoped_ptr<Animation> anim(CreateAnimation(1)); 182 scoped_ptr<Animation> anim(CreateAnimation(1));
168 anim->SetRunState(Animation::Running, 0.0); 183 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
169 EXPECT_FALSE(anim->IsFinishedAt(-1.0)); 184 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(-1.0)));
170 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 185 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
171 EXPECT_TRUE(anim->IsFinishedAt(1.0)); 186 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.0)));
172 EXPECT_TRUE(anim->IsFinishedAt(2.0)); 187 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(2.0)));
173 } 188 }
174 189
175 TEST(AnimationTest, IsFinishedAtInfiniteIterations) { 190 TEST(AnimationTest, IsFinishedAtInfiniteIterations) {
176 scoped_ptr<Animation> anim(CreateAnimation(-1)); 191 scoped_ptr<Animation> anim(CreateAnimation(-1));
177 anim->SetRunState(Animation::Running, 0.0); 192 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
178 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 193 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
179 EXPECT_FALSE(anim->IsFinishedAt(0.5)); 194 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.5)));
180 EXPECT_FALSE(anim->IsFinishedAt(1.0)); 195 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.0)));
181 EXPECT_FALSE(anim->IsFinishedAt(1.5)); 196 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.5)));
182 } 197 }
183 198
184 TEST(AnimationTest, IsFinishedNegativeTimeOffset) { 199 TEST(AnimationTest, IsFinishedNegativeTimeOffset) {
185 scoped_ptr<Animation> anim(CreateAnimation(1)); 200 scoped_ptr<Animation> anim(CreateAnimation(1));
186 anim->set_time_offset(-0.5); 201 anim->set_time_offset(TimeDelta::FromMilliseconds(-500));
187 anim->SetRunState(Animation::Running, 0.0); 202 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
188 203
189 EXPECT_FALSE(anim->IsFinishedAt(-1.0)); 204 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(-1.0)));
190 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 205 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
191 EXPECT_FALSE(anim->IsFinishedAt(0.5)); 206 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.5)));
192 EXPECT_FALSE(anim->IsFinishedAt(1.0)); 207 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.0)));
193 EXPECT_TRUE(anim->IsFinishedAt(1.5)); 208 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.5)));
194 EXPECT_TRUE(anim->IsFinishedAt(2.0)); 209 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(2.0)));
195 EXPECT_TRUE(anim->IsFinishedAt(2.5)); 210 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(2.5)));
196 } 211 }
197 212
198 TEST(AnimationTest, IsFinishedPositiveTimeOffset) { 213 TEST(AnimationTest, IsFinishedPositiveTimeOffset) {
199 scoped_ptr<Animation> anim(CreateAnimation(1)); 214 scoped_ptr<Animation> anim(CreateAnimation(1));
200 anim->set_time_offset(0.5); 215 anim->set_time_offset(TimeDelta::FromMilliseconds(500));
201 anim->SetRunState(Animation::Running, 0.0); 216 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
202 217
203 EXPECT_FALSE(anim->IsFinishedAt(-1.0)); 218 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(-1.0)));
204 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 219 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
205 EXPECT_TRUE(anim->IsFinishedAt(0.5)); 220 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.5)));
206 EXPECT_TRUE(anim->IsFinishedAt(1.0)); 221 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(1.0)));
207 } 222 }
208 223
209 TEST(AnimationTest, IsFinishedAtNotRunning) { 224 TEST(AnimationTest, IsFinishedAtNotRunning) {
210 scoped_ptr<Animation> anim(CreateAnimation(0)); 225 scoped_ptr<Animation> anim(CreateAnimation(0));
211 anim->SetRunState(Animation::Running, 0.0); 226 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
212 EXPECT_TRUE(anim->IsFinishedAt(0.0)); 227 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
213 anim->SetRunState(Animation::Paused, 0.0); 228 anim->SetRunState(Animation::Paused, TimeTicks::FromSeconds(0.0));
214 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 229 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
215 anim->SetRunState(Animation::WaitingForTargetAvailability, 0.0); 230 anim->SetRunState(Animation::WaitingForTargetAvailability,
216 EXPECT_FALSE(anim->IsFinishedAt(0.0)); 231 TimeTicks::FromSeconds(0.0));
217 anim->SetRunState(Animation::Finished, 0.0); 232 EXPECT_FALSE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
218 EXPECT_TRUE(anim->IsFinishedAt(0.0)); 233 anim->SetRunState(Animation::Finished, TimeTicks::FromSeconds(0.0));
219 anim->SetRunState(Animation::Aborted, 0.0); 234 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
220 EXPECT_TRUE(anim->IsFinishedAt(0.0)); 235 anim->SetRunState(Animation::Aborted, TimeTicks::FromSeconds(0.0));
236 EXPECT_TRUE(anim->IsFinishedAt(TimeTicks::FromSeconds(0.0)));
221 } 237 }
222 238
223 TEST(AnimationTest, IsFinished) { 239 TEST(AnimationTest, IsFinished) {
224 scoped_ptr<Animation> anim(CreateAnimation(1)); 240 scoped_ptr<Animation> anim(CreateAnimation(1));
225 anim->SetRunState(Animation::Running, 0.0); 241 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
226 EXPECT_FALSE(anim->is_finished()); 242 EXPECT_FALSE(anim->is_finished());
227 anim->SetRunState(Animation::Paused, 0.0); 243 anim->SetRunState(Animation::Paused, TimeTicks::FromSeconds(0.0));
228 EXPECT_FALSE(anim->is_finished()); 244 EXPECT_FALSE(anim->is_finished());
229 anim->SetRunState(Animation::WaitingForTargetAvailability, 0.0); 245 anim->SetRunState(Animation::WaitingForTargetAvailability,
230 EXPECT_FALSE(anim->is_finished()); 246 TimeTicks::FromSeconds(0.0));
231 anim->SetRunState(Animation::Finished, 0.0); 247 EXPECT_FALSE(anim->is_finished());
232 EXPECT_TRUE(anim->is_finished()); 248 anim->SetRunState(Animation::Finished, TimeTicks::FromSeconds(0.0));
233 anim->SetRunState(Animation::Aborted, 0.0); 249 EXPECT_TRUE(anim->is_finished());
250 anim->SetRunState(Animation::Aborted, TimeTicks::FromSeconds(0.0));
234 EXPECT_TRUE(anim->is_finished()); 251 EXPECT_TRUE(anim->is_finished());
235 } 252 }
236 253
237 TEST(AnimationTest, IsFinishedNeedsSynchronizedStartTime) { 254 TEST(AnimationTest, IsFinishedNeedsSynchronizedStartTime) {
238 scoped_ptr<Animation> anim(CreateAnimation(1)); 255 scoped_ptr<Animation> anim(CreateAnimation(1));
239 anim->SetRunState(Animation::Running, 2.0); 256 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(2.0));
240 EXPECT_FALSE(anim->is_finished()); 257 EXPECT_FALSE(anim->is_finished());
241 anim->SetRunState(Animation::Paused, 2.0); 258 anim->SetRunState(Animation::Paused, TimeTicks::FromSeconds(2.0));
242 EXPECT_FALSE(anim->is_finished()); 259 EXPECT_FALSE(anim->is_finished());
243 anim->SetRunState(Animation::WaitingForTargetAvailability, 2.0); 260 anim->SetRunState(Animation::WaitingForTargetAvailability,
244 EXPECT_FALSE(anim->is_finished()); 261 TimeTicks::FromSeconds(2.0));
245 anim->SetRunState(Animation::Finished, 0.0); 262 EXPECT_FALSE(anim->is_finished());
246 EXPECT_TRUE(anim->is_finished()); 263 anim->SetRunState(Animation::Finished, TimeTicks::FromSeconds(0.0));
247 anim->SetRunState(Animation::Aborted, 0.0); 264 EXPECT_TRUE(anim->is_finished());
265 anim->SetRunState(Animation::Aborted, TimeTicks::FromSeconds(0.0));
248 EXPECT_TRUE(anim->is_finished()); 266 EXPECT_TRUE(anim->is_finished());
249 } 267 }
250 268
251 TEST(AnimationTest, RunStateChangesIgnoredWhileSuspended) { 269 TEST(AnimationTest, RunStateChangesIgnoredWhileSuspended) {
252 scoped_ptr<Animation> anim(CreateAnimation(1)); 270 scoped_ptr<Animation> anim(CreateAnimation(1));
253 anim->Suspend(0); 271 anim->Suspend(TimeTicks::FromSeconds(0));
254 EXPECT_EQ(Animation::Paused, anim->run_state()); 272 EXPECT_EQ(Animation::Paused, anim->run_state());
255 anim->SetRunState(Animation::Running, 0.0); 273 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
256 EXPECT_EQ(Animation::Paused, anim->run_state()); 274 EXPECT_EQ(Animation::Paused, anim->run_state());
257 anim->Resume(0); 275 anim->Resume(TimeTicks::FromSeconds(0));
258 anim->SetRunState(Animation::Running, 0.0); 276 anim->SetRunState(Animation::Running, TimeTicks::FromSeconds(0.0));
259 EXPECT_EQ(Animation::Running, anim->run_state()); 277 EXPECT_EQ(Animation::Running, anim->run_state());
260 } 278 }
261 279
262 } // namespace 280 } // namespace
263 } // namespace cc 281 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698