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

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

Issue 952893003: Update from https://crrev.com/317530 (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Fix gn for nacl Created 5 years, 10 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
« no previous file with comments | « cc/animation/animation_events.h ('k') | cc/animation/layer_animation_controller.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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::TimeDelta; 14 using base::TimeDelta;
15 15
16 static base::TimeTicks TicksFromSecondsF(double seconds) { 16 static base::TimeTicks TicksFromSecondsF(double seconds) {
17 return base::TimeTicks::FromInternalValue(seconds * 17 return base::TimeTicks::FromInternalValue(seconds *
18 base::Time::kMicrosecondsPerSecond); 18 base::Time::kMicrosecondsPerSecond);
19 } 19 }
20 20
21 scoped_ptr<Animation> CreateAnimation(double iterations, 21 scoped_ptr<Animation> CreateAnimation(double iterations,
22 double duration, 22 double duration,
23 double playback_rate) { 23 double playback_rate) {
24 scoped_ptr<Animation> to_return( 24 scoped_ptr<Animation> to_return(
25 Animation::Create(make_scoped_ptr(new FakeFloatAnimationCurve(duration)), 25 Animation::Create(make_scoped_ptr(new FakeFloatAnimationCurve(duration)),
26 0, 26 0, 1, Animation::OPACITY));
27 1,
28 Animation::Opacity));
29 to_return->set_iterations(iterations); 27 to_return->set_iterations(iterations);
30 to_return->set_playback_rate(playback_rate); 28 to_return->set_playback_rate(playback_rate);
31 return to_return.Pass(); 29 return to_return.Pass();
32 } 30 }
33 31
34 scoped_ptr<Animation> CreateAnimation(double iterations, double duration) { 32 scoped_ptr<Animation> CreateAnimation(double iterations, double duration) {
35 return CreateAnimation(iterations, duration, 1); 33 return CreateAnimation(iterations, duration, 1);
36 } 34 }
37 35
38 scoped_ptr<Animation> CreateAnimation(double iterations) { 36 scoped_ptr<Animation> CreateAnimation(double iterations) {
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 84 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
87 .InSecondsF()); 85 .InSecondsF());
88 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 86 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
89 .InSecondsF()); 87 .InSecondsF());
90 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 88 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
91 .InSecondsF()); 89 .InSecondsF());
92 } 90 }
93 91
94 TEST(AnimationTest, TrimTimeReverse) { 92 TEST(AnimationTest, TrimTimeReverse) {
95 scoped_ptr<Animation> anim(CreateAnimation(-1)); 93 scoped_ptr<Animation> anim(CreateAnimation(-1));
96 anim->set_direction(Animation::Reverse); 94 anim->set_direction(Animation::DIRECTION_REVERSE);
97 EXPECT_EQ( 95 EXPECT_EQ(
98 1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0)).InSecondsF()); 96 1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0)).InSecondsF());
99 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 97 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
100 .InSecondsF()); 98 .InSecondsF());
101 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 99 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
102 .InSecondsF()); 100 .InSecondsF());
103 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 101 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
104 .InSecondsF()); 102 .InSecondsF());
105 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 103 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
106 .InSecondsF()); 104 .InSecondsF());
107 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 105 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
108 .InSecondsF()); 106 .InSecondsF());
109 } 107 }
110 108
111 TEST(AnimationTest, TrimTimeAlternateInfiniteIterations) { 109 TEST(AnimationTest, TrimTimeAlternateInfiniteIterations) {
112 scoped_ptr<Animation> anim(CreateAnimation(-1)); 110 scoped_ptr<Animation> anim(CreateAnimation(-1));
113 anim->set_direction(Animation::Alternate); 111 anim->set_direction(Animation::DIRECTION_ALTERNATE);
114 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 112 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
115 .InSecondsF()); 113 .InSecondsF());
116 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 114 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
117 .InSecondsF()); 115 .InSecondsF());
118 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 116 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
119 .InSecondsF()); 117 .InSecondsF());
120 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 118 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
121 .InSecondsF()); 119 .InSecondsF());
122 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 120 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
123 .InSecondsF()); 121 .InSecondsF());
124 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 122 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
125 .InSecondsF()); 123 .InSecondsF());
126 } 124 }
127 125
128 TEST(AnimationTest, TrimTimeAlternateOneIteration) { 126 TEST(AnimationTest, TrimTimeAlternateOneIteration) {
129 scoped_ptr<Animation> anim(CreateAnimation(1)); 127 scoped_ptr<Animation> anim(CreateAnimation(1));
130 anim->set_direction(Animation::Alternate); 128 anim->set_direction(Animation::DIRECTION_ALTERNATE);
131 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 129 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
132 .InSecondsF()); 130 .InSecondsF());
133 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 131 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
134 .InSecondsF()); 132 .InSecondsF());
135 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 133 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
136 .InSecondsF()); 134 .InSecondsF());
137 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 135 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
138 .InSecondsF()); 136 .InSecondsF());
139 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 137 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
140 .InSecondsF()); 138 .InSecondsF());
141 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 139 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
142 .InSecondsF()); 140 .InSecondsF());
143 } 141 }
144 142
145 TEST(AnimationTest, TrimTimeAlternateTwoIterations) { 143 TEST(AnimationTest, TrimTimeAlternateTwoIterations) {
146 scoped_ptr<Animation> anim(CreateAnimation(2)); 144 scoped_ptr<Animation> anim(CreateAnimation(2));
147 anim->set_direction(Animation::Alternate); 145 anim->set_direction(Animation::DIRECTION_ALTERNATE);
148 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 146 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
149 .InSecondsF()); 147 .InSecondsF());
150 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 148 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
151 .InSecondsF()); 149 .InSecondsF());
152 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 150 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
153 .InSecondsF()); 151 .InSecondsF());
154 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 152 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
155 .InSecondsF()); 153 .InSecondsF());
156 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 154 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
157 .InSecondsF()); 155 .InSecondsF());
158 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 156 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
159 .InSecondsF()); 157 .InSecondsF());
160 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75)) 158 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75))
161 .InSecondsF()); 159 .InSecondsF());
162 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 160 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
163 .InSecondsF()); 161 .InSecondsF());
164 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25)) 162 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25))
165 .InSecondsF()); 163 .InSecondsF());
166 } 164 }
167 165
168 TEST(AnimationTest, TrimTimeAlternateTwoHalfIterations) { 166 TEST(AnimationTest, TrimTimeAlternateTwoHalfIterations) {
169 scoped_ptr<Animation> anim(CreateAnimation(2.5)); 167 scoped_ptr<Animation> anim(CreateAnimation(2.5));
170 anim->set_direction(Animation::Alternate); 168 anim->set_direction(Animation::DIRECTION_ALTERNATE);
171 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 169 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
172 .InSecondsF()); 170 .InSecondsF());
173 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 171 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
174 .InSecondsF()); 172 .InSecondsF());
175 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 173 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
176 .InSecondsF()); 174 .InSecondsF());
177 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 175 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
178 .InSecondsF()); 176 .InSecondsF());
179 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 177 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
180 .InSecondsF()); 178 .InSecondsF());
181 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 179 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
182 .InSecondsF()); 180 .InSecondsF());
183 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75)) 181 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75))
184 .InSecondsF()); 182 .InSecondsF());
185 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 183 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
186 .InSecondsF()); 184 .InSecondsF());
187 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25)) 185 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25))
188 .InSecondsF()); 186 .InSecondsF());
189 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.50)) 187 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.50))
190 .InSecondsF()); 188 .InSecondsF());
191 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.75)) 189 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.75))
192 .InSecondsF()); 190 .InSecondsF());
193 } 191 }
194 192
195 TEST(AnimationTest, TrimTimeAlternateReverseInfiniteIterations) { 193 TEST(AnimationTest, TrimTimeAlternateReverseInfiniteIterations) {
196 scoped_ptr<Animation> anim(CreateAnimation(-1)); 194 scoped_ptr<Animation> anim(CreateAnimation(-1));
197 anim->set_direction(Animation::AlternateReverse); 195 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
198 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 196 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
199 .InSecondsF()); 197 .InSecondsF());
200 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 198 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
201 .InSecondsF()); 199 .InSecondsF());
202 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 200 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
203 .InSecondsF()); 201 .InSecondsF());
204 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 202 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
205 .InSecondsF()); 203 .InSecondsF());
206 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 204 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
207 .InSecondsF()); 205 .InSecondsF());
208 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 206 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
209 .InSecondsF()); 207 .InSecondsF());
210 } 208 }
211 209
212 TEST(AnimationTest, TrimTimeAlternateReverseOneIteration) { 210 TEST(AnimationTest, TrimTimeAlternateReverseOneIteration) {
213 scoped_ptr<Animation> anim(CreateAnimation(1)); 211 scoped_ptr<Animation> anim(CreateAnimation(1));
214 anim->set_direction(Animation::AlternateReverse); 212 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
215 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 213 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
216 .InSecondsF()); 214 .InSecondsF());
217 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 215 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
218 .InSecondsF()); 216 .InSecondsF());
219 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 217 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
220 .InSecondsF()); 218 .InSecondsF());
221 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 219 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
222 .InSecondsF()); 220 .InSecondsF());
223 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 221 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
224 .InSecondsF()); 222 .InSecondsF());
225 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 223 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
226 .InSecondsF()); 224 .InSecondsF());
227 } 225 }
228 226
229 TEST(AnimationTest, TrimTimeAlternateReverseTwoIterations) { 227 TEST(AnimationTest, TrimTimeAlternateReverseTwoIterations) {
230 scoped_ptr<Animation> anim(CreateAnimation(2)); 228 scoped_ptr<Animation> anim(CreateAnimation(2));
231 anim->set_direction(Animation::AlternateReverse); 229 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
232 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 230 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
233 .InSecondsF()); 231 .InSecondsF());
234 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 232 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
235 .InSecondsF()); 233 .InSecondsF());
236 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 234 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
237 .InSecondsF()); 235 .InSecondsF());
238 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 236 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
239 .InSecondsF()); 237 .InSecondsF());
240 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 238 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
241 .InSecondsF()); 239 .InSecondsF());
(...skipping 18 matching lines...) Expand all
260 .InSecondsF()); 258 .InSecondsF());
261 EXPECT_EQ( 259 EXPECT_EQ(
262 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF()); 260 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF());
263 EXPECT_EQ( 261 EXPECT_EQ(
264 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(6.0)).InSecondsF()); 262 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(6.0)).InSecondsF());
265 } 263 }
266 264
267 TEST(AnimationTest, TrimTimeStartTimeReverse) { 265 TEST(AnimationTest, TrimTimeStartTimeReverse) {
268 scoped_ptr<Animation> anim(CreateAnimation(1)); 266 scoped_ptr<Animation> anim(CreateAnimation(1));
269 anim->set_start_time(TicksFromSecondsF(4)); 267 anim->set_start_time(TicksFromSecondsF(4));
270 anim->set_direction(Animation::Reverse); 268 anim->set_direction(Animation::DIRECTION_REVERSE);
271 EXPECT_EQ( 269 EXPECT_EQ(
272 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 270 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
273 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0)) 271 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0))
274 .InSecondsF()); 272 .InSecondsF());
275 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5)) 273 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5))
276 .InSecondsF()); 274 .InSecondsF());
277 EXPECT_EQ( 275 EXPECT_EQ(
278 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF()); 276 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF());
279 EXPECT_EQ( 277 EXPECT_EQ(
280 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(6.0)).InSecondsF()); 278 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(6.0)).InSecondsF());
(...skipping 10 matching lines...) Expand all
291 EXPECT_EQ( 289 EXPECT_EQ(
292 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 290 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
293 EXPECT_EQ( 291 EXPECT_EQ(
294 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 292 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
295 } 293 }
296 294
297 TEST(AnimationTest, TrimTimeTimeOffsetReverse) { 295 TEST(AnimationTest, TrimTimeTimeOffsetReverse) {
298 scoped_ptr<Animation> anim(CreateAnimation(1)); 296 scoped_ptr<Animation> anim(CreateAnimation(1));
299 anim->set_time_offset(TimeDelta::FromMilliseconds(4000)); 297 anim->set_time_offset(TimeDelta::FromMilliseconds(4000));
300 anim->set_start_time(TicksFromSecondsF(4)); 298 anim->set_start_time(TicksFromSecondsF(4));
301 anim->set_direction(Animation::Reverse); 299 anim->set_direction(Animation::DIRECTION_REVERSE);
302 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 300 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
303 .InSecondsF()); 301 .InSecondsF());
304 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 302 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
305 .InSecondsF()); 303 .InSecondsF());
306 EXPECT_EQ( 304 EXPECT_EQ(
307 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 305 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
308 EXPECT_EQ( 306 EXPECT_EQ(
309 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 307 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
310 } 308 }
311 309
312 TEST(AnimationTest, TrimTimeNegativeTimeOffset) { 310 TEST(AnimationTest, TrimTimeNegativeTimeOffset) {
313 scoped_ptr<Animation> anim(CreateAnimation(1)); 311 scoped_ptr<Animation> anim(CreateAnimation(1));
314 anim->set_time_offset(TimeDelta::FromMilliseconds(-4000)); 312 anim->set_time_offset(TimeDelta::FromMilliseconds(-4000));
315 313
316 EXPECT_EQ( 314 EXPECT_EQ(
317 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 315 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
318 EXPECT_EQ( 316 EXPECT_EQ(
319 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0)).InSecondsF()); 317 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0)).InSecondsF());
320 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5)) 318 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5))
321 .InSecondsF()); 319 .InSecondsF());
322 EXPECT_EQ( 320 EXPECT_EQ(
323 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF()); 321 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF());
324 } 322 }
325 323
326 TEST(AnimationTest, TrimTimeNegativeTimeOffsetReverse) { 324 TEST(AnimationTest, TrimTimeNegativeTimeOffsetReverse) {
327 scoped_ptr<Animation> anim(CreateAnimation(1)); 325 scoped_ptr<Animation> anim(CreateAnimation(1));
328 anim->set_time_offset(TimeDelta::FromMilliseconds(-4000)); 326 anim->set_time_offset(TimeDelta::FromMilliseconds(-4000));
329 anim->set_direction(Animation::Reverse); 327 anim->set_direction(Animation::DIRECTION_REVERSE);
330 328
331 EXPECT_EQ( 329 EXPECT_EQ(
332 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 330 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
333 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0)) 331 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.0))
334 .InSecondsF()); 332 .InSecondsF());
335 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5)) 333 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(4.5))
336 .InSecondsF()); 334 .InSecondsF());
337 EXPECT_EQ( 335 EXPECT_EQ(
338 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF()); 336 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(5.0)).InSecondsF());
339 } 337 }
340 338
341 TEST(AnimationTest, TrimTimePauseResume) { 339 TEST(AnimationTest, TrimTimePauseResume) {
342 scoped_ptr<Animation> anim(CreateAnimation(1)); 340 scoped_ptr<Animation> anim(CreateAnimation(1));
343 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 341 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
344 EXPECT_EQ( 342 EXPECT_EQ(
345 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 343 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
346 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 344 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
347 .InSecondsF()); 345 .InSecondsF());
348 anim->SetRunState(Animation::Paused, TicksFromSecondsF(0.5)); 346 anim->SetRunState(Animation::PAUSED, TicksFromSecondsF(0.5));
349 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 347 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
350 .InSecondsF()); 348 .InSecondsF());
351 anim->SetRunState(Animation::Running, TicksFromSecondsF(1024.0)); 349 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(1024.0));
352 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 350 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
353 .InSecondsF()); 351 .InSecondsF());
354 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.5)) 352 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.5))
355 .InSecondsF()); 353 .InSecondsF());
356 } 354 }
357 355
358 TEST(AnimationTest, TrimTimePauseResumeReverse) { 356 TEST(AnimationTest, TrimTimePauseResumeReverse) {
359 scoped_ptr<Animation> anim(CreateAnimation(1)); 357 scoped_ptr<Animation> anim(CreateAnimation(1));
360 anim->set_direction(Animation::Reverse); 358 anim->set_direction(Animation::DIRECTION_REVERSE);
361 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 359 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
362 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 360 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
363 .InSecondsF()); 361 .InSecondsF());
364 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 362 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
365 .InSecondsF()); 363 .InSecondsF());
366 anim->SetRunState(Animation::Paused, TicksFromSecondsF(0.25)); 364 anim->SetRunState(Animation::PAUSED, TicksFromSecondsF(0.25));
367 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 365 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
368 .InSecondsF()); 366 .InSecondsF());
369 anim->SetRunState(Animation::Running, TicksFromSecondsF(1024.0)); 367 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(1024.0));
370 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 368 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
371 .InSecondsF()); 369 .InSecondsF());
372 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.75)) 370 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.75))
373 .InSecondsF()); 371 .InSecondsF());
374 } 372 }
375 373
376 TEST(AnimationTest, TrimTimeSuspendResume) { 374 TEST(AnimationTest, TrimTimeSuspendResume) {
377 scoped_ptr<Animation> anim(CreateAnimation(1)); 375 scoped_ptr<Animation> anim(CreateAnimation(1));
378 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 376 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
379 EXPECT_EQ( 377 EXPECT_EQ(
380 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 378 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
381 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 379 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
382 .InSecondsF()); 380 .InSecondsF());
383 anim->Suspend(TicksFromSecondsF(0.5)); 381 anim->Suspend(TicksFromSecondsF(0.5));
384 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 382 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
385 .InSecondsF()); 383 .InSecondsF());
386 anim->Resume(TicksFromSecondsF(1024)); 384 anim->Resume(TicksFromSecondsF(1024));
387 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 385 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
388 .InSecondsF()); 386 .InSecondsF());
389 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.5)) 387 EXPECT_EQ(1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.5))
390 .InSecondsF()); 388 .InSecondsF());
391 } 389 }
392 390
393 TEST(AnimationTest, TrimTimeSuspendResumeReverse) { 391 TEST(AnimationTest, TrimTimeSuspendResumeReverse) {
394 scoped_ptr<Animation> anim(CreateAnimation(1)); 392 scoped_ptr<Animation> anim(CreateAnimation(1));
395 anim->set_direction(Animation::Reverse); 393 anim->set_direction(Animation::DIRECTION_REVERSE);
396 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 394 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
397 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 395 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
398 .InSecondsF()); 396 .InSecondsF());
399 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 397 EXPECT_EQ(0.75, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
400 .InSecondsF()); 398 .InSecondsF());
401 anim->Suspend(TicksFromSecondsF(0.75)); 399 anim->Suspend(TicksFromSecondsF(0.75));
402 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 400 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
403 .InSecondsF()); 401 .InSecondsF());
404 anim->Resume(TicksFromSecondsF(1024)); 402 anim->Resume(TicksFromSecondsF(1024));
405 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0)) 403 EXPECT_EQ(0.25, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.0))
406 .InSecondsF()); 404 .InSecondsF());
407 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.25)) 405 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1024.25))
408 .InSecondsF()); 406 .InSecondsF());
409 } 407 }
410 408
411 TEST(AnimationTest, TrimTimeZeroDuration) { 409 TEST(AnimationTest, TrimTimeZeroDuration) {
412 scoped_ptr<Animation> anim(CreateAnimation(0, 0)); 410 scoped_ptr<Animation> anim(CreateAnimation(0, 0));
413 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 411 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
414 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 412 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
415 .InSecondsF()); 413 .InSecondsF());
416 EXPECT_EQ( 414 EXPECT_EQ(
417 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 415 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
418 EXPECT_EQ( 416 EXPECT_EQ(
419 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 417 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
420 } 418 }
421 419
422 TEST(AnimationTest, TrimTimeStarting) { 420 TEST(AnimationTest, TrimTimeStarting) {
423 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0)); 421 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0));
424 anim->SetRunState(Animation::Starting, TicksFromSecondsF(0.0)); 422 anim->SetRunState(Animation::STARTING, TicksFromSecondsF(0.0));
425 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 423 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
426 .InSecondsF()); 424 .InSecondsF());
427 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 425 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
428 .InSecondsF()); 426 .InSecondsF());
429 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 427 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
430 .InSecondsF()); 428 .InSecondsF());
431 anim->set_time_offset(TimeDelta::FromMilliseconds(2000)); 429 anim->set_time_offset(TimeDelta::FromMilliseconds(2000));
432 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 430 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
433 .InSecondsF()); 431 .InSecondsF());
434 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 432 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
435 .InSecondsF()); 433 .InSecondsF());
436 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 434 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
437 .InSecondsF()); 435 .InSecondsF());
438 anim->set_start_time(TicksFromSecondsF(1.0)); 436 anim->set_start_time(TicksFromSecondsF(1.0));
439 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 437 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
440 .InSecondsF()); 438 .InSecondsF());
441 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 439 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
442 .InSecondsF()); 440 .InSecondsF());
443 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 441 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
444 .InSecondsF()); 442 .InSecondsF());
445 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 443 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
446 .InSecondsF()); 444 .InSecondsF());
447 } 445 }
448 446
449 TEST(AnimationTest, TrimTimeNeedsSynchronizedStartTime) { 447 TEST(AnimationTest, TrimTimeNeedsSynchronizedStartTime) {
450 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0)); 448 scoped_ptr<Animation> anim(CreateAnimation(1, 5.0));
451 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 449 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
452 anim->set_needs_synchronized_start_time(true); 450 anim->set_needs_synchronized_start_time(true);
453 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 451 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
454 .InSecondsF()); 452 .InSecondsF());
455 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 453 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
456 .InSecondsF()); 454 .InSecondsF());
457 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 455 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
458 .InSecondsF()); 456 .InSecondsF());
459 anim->set_time_offset(TimeDelta::FromMilliseconds(2000)); 457 anim->set_time_offset(TimeDelta::FromMilliseconds(2000));
460 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 458 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
461 .InSecondsF()); 459 .InSecondsF());
462 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 460 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
463 .InSecondsF()); 461 .InSecondsF());
464 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 462 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
465 .InSecondsF()); 463 .InSecondsF());
466 anim->set_start_time(TicksFromSecondsF(1.0)); 464 anim->set_start_time(TicksFromSecondsF(1.0));
467 anim->set_needs_synchronized_start_time(false); 465 anim->set_needs_synchronized_start_time(false);
468 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 466 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
469 .InSecondsF()); 467 .InSecondsF());
470 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 468 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
471 .InSecondsF()); 469 .InSecondsF());
472 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 470 EXPECT_EQ(3.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
473 .InSecondsF()); 471 .InSecondsF());
474 } 472 }
475 473
476 TEST(AnimationTest, IsFinishedAtZeroIterations) { 474 TEST(AnimationTest, IsFinishedAtZeroIterations) {
477 scoped_ptr<Animation> anim(CreateAnimation(0)); 475 scoped_ptr<Animation> anim(CreateAnimation(0));
478 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 476 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
479 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0))); 477 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0)));
480 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 478 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
481 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0))); 479 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0)));
482 } 480 }
483 481
484 TEST(AnimationTest, IsFinishedAtOneIteration) { 482 TEST(AnimationTest, IsFinishedAtOneIteration) {
485 scoped_ptr<Animation> anim(CreateAnimation(1)); 483 scoped_ptr<Animation> anim(CreateAnimation(1));
486 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 484 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
487 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0))); 485 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0)));
488 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 486 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
489 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0))); 487 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0)));
490 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.0))); 488 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.0)));
491 } 489 }
492 490
493 TEST(AnimationTest, IsFinishedAtInfiniteIterations) { 491 TEST(AnimationTest, IsFinishedAtInfiniteIterations) {
494 scoped_ptr<Animation> anim(CreateAnimation(-1)); 492 scoped_ptr<Animation> anim(CreateAnimation(-1));
495 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 493 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
496 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 494 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
497 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.5))); 495 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.5)));
498 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.0))); 496 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.0)));
499 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.5))); 497 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.5)));
500 } 498 }
501 499
502 TEST(AnimationTest, IsFinishedNegativeTimeOffset) { 500 TEST(AnimationTest, IsFinishedNegativeTimeOffset) {
503 scoped_ptr<Animation> anim(CreateAnimation(1)); 501 scoped_ptr<Animation> anim(CreateAnimation(1));
504 anim->set_time_offset(TimeDelta::FromMilliseconds(-500)); 502 anim->set_time_offset(TimeDelta::FromMilliseconds(-500));
505 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 503 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
506 504
507 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0))); 505 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0)));
508 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 506 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
509 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.5))); 507 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.5)));
510 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.0))); 508 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(1.0)));
511 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.5))); 509 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.5)));
512 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.0))); 510 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.0)));
513 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.5))); 511 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(2.5)));
514 } 512 }
515 513
516 TEST(AnimationTest, IsFinishedPositiveTimeOffset) { 514 TEST(AnimationTest, IsFinishedPositiveTimeOffset) {
517 scoped_ptr<Animation> anim(CreateAnimation(1)); 515 scoped_ptr<Animation> anim(CreateAnimation(1));
518 anim->set_time_offset(TimeDelta::FromMilliseconds(500)); 516 anim->set_time_offset(TimeDelta::FromMilliseconds(500));
519 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 517 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
520 518
521 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0))); 519 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(-1.0)));
522 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 520 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
523 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.5))); 521 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.5)));
524 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0))); 522 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(1.0)));
525 } 523 }
526 524
527 TEST(AnimationTest, IsFinishedAtNotRunning) { 525 TEST(AnimationTest, IsFinishedAtNotRunning) {
528 scoped_ptr<Animation> anim(CreateAnimation(0)); 526 scoped_ptr<Animation> anim(CreateAnimation(0));
529 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 527 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
530 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 528 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
531 anim->SetRunState(Animation::Paused, TicksFromSecondsF(0.0)); 529 anim->SetRunState(Animation::PAUSED, TicksFromSecondsF(0.0));
532 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 530 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
533 anim->SetRunState(Animation::WaitingForTargetAvailability, 531 anim->SetRunState(Animation::WAITING_FOR_TARGET_AVAILABILITY,
534 TicksFromSecondsF(0.0)); 532 TicksFromSecondsF(0.0));
535 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 533 EXPECT_FALSE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
536 anim->SetRunState(Animation::Finished, TicksFromSecondsF(0.0)); 534 anim->SetRunState(Animation::FINISHED, TicksFromSecondsF(0.0));
537 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 535 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
538 anim->SetRunState(Animation::Aborted, TicksFromSecondsF(0.0)); 536 anim->SetRunState(Animation::ABORTED, TicksFromSecondsF(0.0));
539 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0))); 537 EXPECT_TRUE(anim->IsFinishedAt(TicksFromSecondsF(0.0)));
540 } 538 }
541 539
542 TEST(AnimationTest, IsFinished) { 540 TEST(AnimationTest, IsFinished) {
543 scoped_ptr<Animation> anim(CreateAnimation(1)); 541 scoped_ptr<Animation> anim(CreateAnimation(1));
544 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 542 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
545 EXPECT_FALSE(anim->is_finished()); 543 EXPECT_FALSE(anim->is_finished());
546 anim->SetRunState(Animation::Paused, TicksFromSecondsF(0.0)); 544 anim->SetRunState(Animation::PAUSED, TicksFromSecondsF(0.0));
547 EXPECT_FALSE(anim->is_finished()); 545 EXPECT_FALSE(anim->is_finished());
548 anim->SetRunState(Animation::WaitingForTargetAvailability, 546 anim->SetRunState(Animation::WAITING_FOR_TARGET_AVAILABILITY,
549 TicksFromSecondsF(0.0)); 547 TicksFromSecondsF(0.0));
550 EXPECT_FALSE(anim->is_finished()); 548 EXPECT_FALSE(anim->is_finished());
551 anim->SetRunState(Animation::Finished, TicksFromSecondsF(0.0)); 549 anim->SetRunState(Animation::FINISHED, TicksFromSecondsF(0.0));
552 EXPECT_TRUE(anim->is_finished()); 550 EXPECT_TRUE(anim->is_finished());
553 anim->SetRunState(Animation::Aborted, TicksFromSecondsF(0.0)); 551 anim->SetRunState(Animation::ABORTED, TicksFromSecondsF(0.0));
554 EXPECT_TRUE(anim->is_finished()); 552 EXPECT_TRUE(anim->is_finished());
555 } 553 }
556 554
557 TEST(AnimationTest, IsFinishedNeedsSynchronizedStartTime) { 555 TEST(AnimationTest, IsFinishedNeedsSynchronizedStartTime) {
558 scoped_ptr<Animation> anim(CreateAnimation(1)); 556 scoped_ptr<Animation> anim(CreateAnimation(1));
559 anim->SetRunState(Animation::Running, TicksFromSecondsF(2.0)); 557 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(2.0));
560 EXPECT_FALSE(anim->is_finished()); 558 EXPECT_FALSE(anim->is_finished());
561 anim->SetRunState(Animation::Paused, TicksFromSecondsF(2.0)); 559 anim->SetRunState(Animation::PAUSED, TicksFromSecondsF(2.0));
562 EXPECT_FALSE(anim->is_finished()); 560 EXPECT_FALSE(anim->is_finished());
563 anim->SetRunState(Animation::WaitingForTargetAvailability, 561 anim->SetRunState(Animation::WAITING_FOR_TARGET_AVAILABILITY,
564 TicksFromSecondsF(2.0)); 562 TicksFromSecondsF(2.0));
565 EXPECT_FALSE(anim->is_finished()); 563 EXPECT_FALSE(anim->is_finished());
566 anim->SetRunState(Animation::Finished, TicksFromSecondsF(0.0)); 564 anim->SetRunState(Animation::FINISHED, TicksFromSecondsF(0.0));
567 EXPECT_TRUE(anim->is_finished()); 565 EXPECT_TRUE(anim->is_finished());
568 anim->SetRunState(Animation::Aborted, TicksFromSecondsF(0.0)); 566 anim->SetRunState(Animation::ABORTED, TicksFromSecondsF(0.0));
569 EXPECT_TRUE(anim->is_finished()); 567 EXPECT_TRUE(anim->is_finished());
570 } 568 }
571 569
572 TEST(AnimationTest, RunStateChangesIgnoredWhileSuspended) { 570 TEST(AnimationTest, RunStateChangesIgnoredWhileSuspended) {
573 scoped_ptr<Animation> anim(CreateAnimation(1)); 571 scoped_ptr<Animation> anim(CreateAnimation(1));
574 anim->Suspend(TicksFromSecondsF(0)); 572 anim->Suspend(TicksFromSecondsF(0));
575 EXPECT_EQ(Animation::Paused, anim->run_state()); 573 EXPECT_EQ(Animation::PAUSED, anim->run_state());
576 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 574 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
577 EXPECT_EQ(Animation::Paused, anim->run_state()); 575 EXPECT_EQ(Animation::PAUSED, anim->run_state());
578 anim->Resume(TicksFromSecondsF(0)); 576 anim->Resume(TicksFromSecondsF(0));
579 anim->SetRunState(Animation::Running, TicksFromSecondsF(0.0)); 577 anim->SetRunState(Animation::RUNNING, TicksFromSecondsF(0.0));
580 EXPECT_EQ(Animation::Running, anim->run_state()); 578 EXPECT_EQ(Animation::RUNNING, anim->run_state());
581 } 579 }
582 580
583 TEST(AnimationTest, TrimTimePlaybackNormal) { 581 TEST(AnimationTest, TrimTimePlaybackNormal) {
584 scoped_ptr<Animation> anim(CreateAnimation(1, 1, 1)); 582 scoped_ptr<Animation> anim(CreateAnimation(1, 1, 1));
585 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 583 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
586 .InSecondsF()); 584 .InSecondsF());
587 EXPECT_EQ( 585 EXPECT_EQ(
588 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 586 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
589 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 587 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
590 .InSecondsF()); 588 .InSecondsF());
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
701 EXPECT_EQ( 699 EXPECT_EQ(
702 2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)).InSecondsF()); 700 2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)).InSecondsF());
703 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1000.0)) 701 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1000.0))
704 .InSecondsF()); 702 .InSecondsF());
705 EXPECT_EQ(2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1000.5)) 703 EXPECT_EQ(2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1000.5))
706 .InSecondsF()); 704 .InSecondsF());
707 } 705 }
708 706
709 TEST(AnimationTest, TrimTimePlaybackNormalDoubleReverse) { 707 TEST(AnimationTest, TrimTimePlaybackNormalDoubleReverse) {
710 scoped_ptr<Animation> anim(CreateAnimation(1, 1, -1)); 708 scoped_ptr<Animation> anim(CreateAnimation(1, 1, -1));
711 anim->set_direction(Animation::Reverse); 709 anim->set_direction(Animation::DIRECTION_REVERSE);
712 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 710 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
713 .InSecondsF()); 711 .InSecondsF());
714 EXPECT_EQ( 712 EXPECT_EQ(
715 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 713 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
716 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 714 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
717 .InSecondsF()); 715 .InSecondsF());
718 EXPECT_EQ( 716 EXPECT_EQ(
719 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 717 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
720 EXPECT_EQ( 718 EXPECT_EQ(
721 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)).InSecondsF()); 719 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)).InSecondsF());
722 } 720 }
723 721
724 TEST(AnimationTest, TrimTimePlaybackFastDoubleReverse) { 722 TEST(AnimationTest, TrimTimePlaybackFastDoubleReverse) {
725 scoped_ptr<Animation> anim(CreateAnimation(1, 4, -2)); 723 scoped_ptr<Animation> anim(CreateAnimation(1, 4, -2));
726 anim->set_direction(Animation::Reverse); 724 anim->set_direction(Animation::DIRECTION_REVERSE);
727 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 725 EXPECT_EQ(0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
728 .InSecondsF()); 726 .InSecondsF());
729 EXPECT_EQ( 727 EXPECT_EQ(
730 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF()); 728 0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)).InSecondsF());
731 EXPECT_EQ( 729 EXPECT_EQ(
732 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)).InSecondsF()); 730 1, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)).InSecondsF());
733 EXPECT_EQ( 731 EXPECT_EQ(
734 2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF()); 732 2, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)).InSecondsF());
735 EXPECT_EQ( 733 EXPECT_EQ(
736 3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)).InSecondsF()); 734 3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)).InSecondsF());
737 EXPECT_EQ( 735 EXPECT_EQ(
738 4, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)).InSecondsF()); 736 4, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)).InSecondsF());
739 EXPECT_EQ( 737 EXPECT_EQ(
740 4, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5)).InSecondsF()); 738 4, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5)).InSecondsF());
741 } 739 }
742 740
743 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFast) { 741 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFast) {
744 scoped_ptr<Animation> anim(CreateAnimation(2, 2, 2)); 742 scoped_ptr<Animation> anim(CreateAnimation(2, 2, 2));
745 anim->set_direction(Animation::Alternate); 743 anim->set_direction(Animation::DIRECTION_ALTERNATE);
746 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 744 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
747 .InSecondsF()); 745 .InSecondsF());
748 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 746 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
749 .InSecondsF()); 747 .InSecondsF());
750 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 748 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
751 .InSecondsF()); 749 .InSecondsF());
752 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 750 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
753 .InSecondsF()); 751 .InSecondsF());
754 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 752 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
755 .InSecondsF()); 753 .InSecondsF());
756 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 754 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
757 .InSecondsF()); 755 .InSecondsF());
758 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 756 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
759 .InSecondsF()); 757 .InSecondsF());
760 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75)) 758 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75))
761 .InSecondsF()); 759 .InSecondsF());
762 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 760 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
763 .InSecondsF()); 761 .InSecondsF());
764 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25)) 762 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25))
765 .InSecondsF()); 763 .InSecondsF());
766 } 764 }
767 765
768 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFastReverse) { 766 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFastReverse) {
769 scoped_ptr<Animation> anim(CreateAnimation(2, 2, 2)); 767 scoped_ptr<Animation> anim(CreateAnimation(2, 2, 2));
770 anim->set_direction(Animation::AlternateReverse); 768 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
771 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 769 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
772 .InSecondsF()); 770 .InSecondsF());
773 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 771 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
774 .InSecondsF()); 772 .InSecondsF());
775 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 773 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
776 .InSecondsF()); 774 .InSecondsF());
777 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 775 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
778 .InSecondsF()); 776 .InSecondsF());
779 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 777 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
780 .InSecondsF()); 778 .InSecondsF());
781 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 779 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
782 .InSecondsF()); 780 .InSecondsF());
783 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 781 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
784 .InSecondsF()); 782 .InSecondsF());
785 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 783 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
786 .InSecondsF()); 784 .InSecondsF());
787 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75)) 785 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75))
788 .InSecondsF()); 786 .InSecondsF());
789 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 787 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
790 .InSecondsF()); 788 .InSecondsF());
791 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25)) 789 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25))
792 .InSecondsF()); 790 .InSecondsF());
793 } 791 }
794 792
795 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFastDoubleReverse) { 793 TEST(AnimationTest, TrimTimeAlternateTwoIterationsPlaybackFastDoubleReverse) {
796 scoped_ptr<Animation> anim(CreateAnimation(2, 2, -2)); 794 scoped_ptr<Animation> anim(CreateAnimation(2, 2, -2));
797 anim->set_direction(Animation::AlternateReverse); 795 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
798 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 796 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
799 .InSecondsF()); 797 .InSecondsF());
800 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 798 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
801 .InSecondsF()); 799 .InSecondsF());
802 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 800 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
803 .InSecondsF()); 801 .InSecondsF());
804 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 802 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
805 .InSecondsF()); 803 .InSecondsF());
806 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 804 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
807 .InSecondsF()); 805 .InSecondsF());
808 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25)) 806 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.25))
809 .InSecondsF()); 807 .InSecondsF());
810 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 808 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
811 .InSecondsF()); 809 .InSecondsF());
812 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75)) 810 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.75))
813 .InSecondsF()); 811 .InSecondsF());
814 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 812 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
815 .InSecondsF()); 813 .InSecondsF());
816 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25)) 814 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.25))
817 .InSecondsF()); 815 .InSecondsF());
818 } 816 }
819 817
820 TEST(AnimationTest, 818 TEST(AnimationTest,
821 TrimTimeAlternateReverseThreeIterationsPlaybackFastAlternateReverse) { 819 TrimTimeAlternateReverseThreeIterationsPlaybackFastAlternateReverse) {
822 scoped_ptr<Animation> anim(CreateAnimation(3, 2, -2)); 820 scoped_ptr<Animation> anim(CreateAnimation(3, 2, -2));
823 anim->set_direction(Animation::AlternateReverse); 821 anim->set_direction(Animation::DIRECTION_ALTERNATE_REVERSE);
824 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 822 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
825 .InSecondsF()); 823 .InSecondsF());
826 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25)) 824 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.25))
827 .InSecondsF()); 825 .InSecondsF());
828 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 826 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
829 .InSecondsF()); 827 .InSecondsF());
830 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75)) 828 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.75))
831 .InSecondsF()); 829 .InSecondsF());
832 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 830 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
833 .InSecondsF()); 831 .InSecondsF());
(...skipping 13 matching lines...) Expand all
847 .InSecondsF()); 845 .InSecondsF());
848 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0)) 846 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0))
849 .InSecondsF()); 847 .InSecondsF());
850 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.25)) 848 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.25))
851 .InSecondsF()); 849 .InSecondsF());
852 } 850 }
853 851
854 TEST(AnimationTest, 852 TEST(AnimationTest,
855 TrimTimeAlternateReverseTwoIterationsPlaybackNormalAlternate) { 853 TrimTimeAlternateReverseTwoIterationsPlaybackNormalAlternate) {
856 scoped_ptr<Animation> anim(CreateAnimation(2, 2, -1)); 854 scoped_ptr<Animation> anim(CreateAnimation(2, 2, -1));
857 anim->set_direction(Animation::Alternate); 855 anim->set_direction(Animation::DIRECTION_ALTERNATE);
858 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 856 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
859 .InSecondsF()); 857 .InSecondsF());
860 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 858 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
861 .InSecondsF()); 859 .InSecondsF());
862 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 860 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
863 .InSecondsF()); 861 .InSecondsF());
864 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 862 EXPECT_EQ(1.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
865 .InSecondsF()); 863 .InSecondsF());
866 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 864 EXPECT_EQ(2.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
867 .InSecondsF()); 865 .InSecondsF());
(...skipping 23 matching lines...) Expand all
891 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 889 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
892 .InSecondsF()); 890 .InSecondsF());
893 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 891 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
894 .InSecondsF()); 892 .InSecondsF());
895 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5)) 893 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5))
896 .InSecondsF()); 894 .InSecondsF());
897 } 895 }
898 896
899 TEST(AnimationTest, TrimTimeIterationStartAlternate) { 897 TEST(AnimationTest, TrimTimeIterationStartAlternate) {
900 scoped_ptr<Animation> anim(CreateAnimation(2, 1, 1)); 898 scoped_ptr<Animation> anim(CreateAnimation(2, 1, 1));
901 anim->set_direction(Animation::Alternate); 899 anim->set_direction(Animation::DIRECTION_ALTERNATE);
902 anim->set_iteration_start(0.3); 900 anim->set_iteration_start(0.3);
903 EXPECT_EQ(0.3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 901 EXPECT_EQ(0.3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
904 .InSecondsF()); 902 .InSecondsF());
905 EXPECT_EQ(0.3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 903 EXPECT_EQ(0.3, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
906 .InSecondsF()); 904 .InSecondsF());
907 EXPECT_EQ(0.8, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 905 EXPECT_EQ(0.8, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
908 .InSecondsF()); 906 .InSecondsF());
909 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.7)) 907 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.7))
910 .InSecondsF()); 908 .InSecondsF());
911 EXPECT_EQ(0.7, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 909 EXPECT_EQ(0.7, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
912 .InSecondsF()); 910 .InSecondsF());
913 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.2)) 911 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.2))
914 .InSecondsF()); 912 .InSecondsF());
915 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.7)) 913 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.7))
916 .InSecondsF()); 914 .InSecondsF());
917 } 915 }
918 916
919 TEST(AnimationTest, TrimTimeIterationStartAlternateThreeIterations) { 917 TEST(AnimationTest, TrimTimeIterationStartAlternateThreeIterations) {
920 scoped_ptr<Animation> anim(CreateAnimation(3, 1, 1)); 918 scoped_ptr<Animation> anim(CreateAnimation(3, 1, 1));
921 anim->set_direction(Animation::Alternate); 919 anim->set_direction(Animation::DIRECTION_ALTERNATE);
922 anim->set_iteration_start(1); 920 anim->set_iteration_start(1);
923 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0)) 921 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(-1.0))
924 .InSecondsF()); 922 .InSecondsF());
925 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 923 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
926 .InSecondsF()); 924 .InSecondsF());
927 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5)) 925 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.5))
928 .InSecondsF()); 926 .InSecondsF());
929 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 927 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
930 .InSecondsF()); 928 .InSecondsF());
931 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5)) 929 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.5))
932 .InSecondsF()); 930 .InSecondsF());
933 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 931 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
934 .InSecondsF()); 932 .InSecondsF());
935 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5)) 933 EXPECT_EQ(0.5, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.5))
936 .InSecondsF()); 934 .InSecondsF());
937 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0)) 935 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0))
938 .InSecondsF()); 936 .InSecondsF());
939 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.5)) 937 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.5))
940 .InSecondsF()); 938 .InSecondsF());
941 } 939 }
942 940
943 TEST(AnimationTest, 941 TEST(AnimationTest,
944 TrimTimeIterationStartAlternateThreeIterationsPlaybackReverse) { 942 TrimTimeIterationStartAlternateThreeIterationsPlaybackReverse) {
945 scoped_ptr<Animation> anim(CreateAnimation(3, 1, -1)); 943 scoped_ptr<Animation> anim(CreateAnimation(3, 1, -1));
946 anim->set_direction(Animation::Alternate); 944 anim->set_direction(Animation::DIRECTION_ALTERNATE);
947 anim->set_iteration_start(1); 945 anim->set_iteration_start(1);
948 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0)) 946 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(0.0))
949 .InSecondsF()); 947 .InSecondsF());
950 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0)) 948 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(1.0))
951 .InSecondsF()); 949 .InSecondsF());
952 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0)) 950 EXPECT_EQ(0.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(2.0))
953 .InSecondsF()); 951 .InSecondsF());
954 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0)) 952 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.0))
955 .InSecondsF()); 953 .InSecondsF());
956 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.5)) 954 EXPECT_EQ(1.0, anim->TrimTimeToCurrentIteration(TicksFromSecondsF(3.5))
957 .InSecondsF()); 955 .InSecondsF());
958 } 956 }
959 957
960 TEST(AnimationTest, InEffectFillMode) { 958 TEST(AnimationTest, InEffectFillMode) {
961 scoped_ptr<Animation> anim(CreateAnimation(1)); 959 scoped_ptr<Animation> anim(CreateAnimation(1));
962 anim->set_fill_mode(Animation::FillModeNone); 960 anim->set_fill_mode(Animation::FILL_MODE_NONE);
963 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0))); 961 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0)));
964 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 962 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
965 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 963 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
966 964
967 anim->set_fill_mode(Animation::FillModeForwards); 965 anim->set_fill_mode(Animation::FILL_MODE_FORWARDS);
968 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0))); 966 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0)));
969 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 967 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
970 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 968 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
971 969
972 anim->set_fill_mode(Animation::FillModeBackwards); 970 anim->set_fill_mode(Animation::FILL_MODE_BACKWARDS);
973 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0))); 971 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0)));
974 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 972 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
975 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 973 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
976 974
977 anim->set_fill_mode(Animation::FillModeBoth); 975 anim->set_fill_mode(Animation::FILL_MODE_BOTH);
978 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0))); 976 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0)));
979 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 977 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
980 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 978 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
981 } 979 }
982 980
983 TEST(AnimationTest, InEffectFillModePlayback) { 981 TEST(AnimationTest, InEffectFillModePlayback) {
984 scoped_ptr<Animation> anim(CreateAnimation(1, 1, -1)); 982 scoped_ptr<Animation> anim(CreateAnimation(1, 1, -1));
985 anim->set_fill_mode(Animation::FillModeNone); 983 anim->set_fill_mode(Animation::FILL_MODE_NONE);
986 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0))); 984 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0)));
987 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 985 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
988 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 986 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
989 987
990 anim->set_fill_mode(Animation::FillModeForwards); 988 anim->set_fill_mode(Animation::FILL_MODE_FORWARDS);
991 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0))); 989 EXPECT_FALSE(anim->InEffect(TicksFromSecondsF(-1.0)));
992 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 990 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
993 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 991 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
994 992
995 anim->set_fill_mode(Animation::FillModeBackwards); 993 anim->set_fill_mode(Animation::FILL_MODE_BACKWARDS);
996 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0))); 994 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0)));
997 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 995 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
998 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 996 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
999 997
1000 anim->set_fill_mode(Animation::FillModeBoth); 998 anim->set_fill_mode(Animation::FILL_MODE_BOTH);
1001 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0))); 999 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(-1.0)));
1002 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0))); 1000 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(0.0)));
1003 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0))); 1001 EXPECT_TRUE(anim->InEffect(TicksFromSecondsF(1.0)));
1004 } 1002 }
1005 1003
1006 } // namespace 1004 } // namespace
1007 } // namespace cc 1005 } // namespace cc
OLDNEW
« no previous file with comments | « cc/animation/animation_events.h ('k') | cc/animation/layer_animation_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698