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

Side by Side Diff: Source/core/animation/TimedItemTest.cpp

Issue 225073004: Oilpan: Completely move core/animations/ to oilpan's heap (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013, Google Inc. All rights reserved. 2 * Copyright (c) 2013, Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 bool iterationChanged() { return m_iterationChanged; } 57 bool iterationChanged() { return m_iterationChanged; }
58 58
59 private: 59 private:
60 bool m_eventTriggered; 60 bool m_eventTriggered;
61 bool m_phaseChanged; 61 bool m_phaseChanged;
62 bool m_iterationChanged; 62 bool m_iterationChanged;
63 }; 63 };
64 64
65 class TestTimedItem : public TimedItem { 65 class TestTimedItem : public TimedItem {
66 public: 66 public:
67 static PassRefPtr<TestTimedItem> create(const Timing& specified) 67 static PassRefPtrWillBeRawPtr<TestTimedItem> create(const Timing& specified)
68 { 68 {
69 return adoptRef(new TestTimedItem(specified, new TestTimedItemEventDeleg ate())); 69 return adoptRefWillBeNoop(new TestTimedItem(specified, new TestTimedItem EventDelegate()));
70 } 70 }
71 71
72 void updateInheritedTime(double time) 72 void updateInheritedTime(double time)
73 { 73 {
74 m_eventDelegate->reset(); 74 m_eventDelegate->reset();
75 TimedItem::updateInheritedTime(time); 75 TimedItem::updateInheritedTime(time);
76 } 76 }
77 77
78 virtual void updateChildrenAndEffects() const OVERRIDE { } 78 virtual void updateChildrenAndEffects() const OVERRIDE { }
79 void willDetach() { } 79 void willDetach() { }
(...skipping 27 matching lines...) Expand all
107 107
108 TestTimedItemEventDelegate* m_eventDelegate; 108 TestTimedItemEventDelegate* m_eventDelegate;
109 mutable double m_localTime; 109 mutable double m_localTime;
110 mutable double m_timeToNextIteration; 110 mutable double m_timeToNextIteration;
111 }; 111 };
112 112
113 TEST(AnimationTimedItemTest, Sanity) 113 TEST(AnimationTimedItemTest, Sanity)
114 { 114 {
115 Timing timing; 115 Timing timing;
116 timing.iterationDuration = 2; 116 timing.iterationDuration = 2;
117 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 117 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
118 118
119 EXPECT_EQ(0, timedItem->startTime()); 119 EXPECT_EQ(0, timedItem->startTime());
120 120
121 timedItem->updateInheritedTime(0); 121 timedItem->updateInheritedTime(0);
122 122
123 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 123 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
124 EXPECT_TRUE(timedItem->isInPlay()); 124 EXPECT_TRUE(timedItem->isInPlay());
125 EXPECT_TRUE(timedItem->isCurrent()); 125 EXPECT_TRUE(timedItem->isCurrent());
126 EXPECT_TRUE(timedItem->isInEffect()); 126 EXPECT_TRUE(timedItem->isInEffect());
127 EXPECT_EQ(0, timedItem->currentIteration()); 127 EXPECT_EQ(0, timedItem->currentIteration());
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 EXPECT_EQ(0, timedItem->currentIteration()); 160 EXPECT_EQ(0, timedItem->currentIteration());
161 EXPECT_EQ(0, timedItem->startTime()); 161 EXPECT_EQ(0, timedItem->startTime());
162 EXPECT_EQ(2, timedItem->activeDurationInternal()); 162 EXPECT_EQ(2, timedItem->activeDurationInternal());
163 EXPECT_EQ(1, timedItem->timeFraction()); 163 EXPECT_EQ(1, timedItem->timeFraction());
164 } 164 }
165 165
166 TEST(AnimationTimedItemTest, FillAuto) 166 TEST(AnimationTimedItemTest, FillAuto)
167 { 167 {
168 Timing timing; 168 Timing timing;
169 timing.iterationDuration = 1; 169 timing.iterationDuration = 1;
170 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 170 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
171 171
172 timedItem->updateInheritedTime(-1); 172 timedItem->updateInheritedTime(-1);
173 EXPECT_EQ(0, timedItem->timeFraction()); 173 EXPECT_EQ(0, timedItem->timeFraction());
174 174
175 timedItem->updateInheritedTime(2); 175 timedItem->updateInheritedTime(2);
176 EXPECT_EQ(1, timedItem->timeFraction()); 176 EXPECT_EQ(1, timedItem->timeFraction());
177 } 177 }
178 178
179 TEST(AnimationTimedItemTest, FillForwards) 179 TEST(AnimationTimedItemTest, FillForwards)
180 { 180 {
181 Timing timing; 181 Timing timing;
182 timing.iterationDuration = 1; 182 timing.iterationDuration = 1;
183 timing.fillMode = Timing::FillModeForwards; 183 timing.fillMode = Timing::FillModeForwards;
184 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 184 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
185 185
186 timedItem->updateInheritedTime(-1); 186 timedItem->updateInheritedTime(-1);
187 EXPECT_TRUE(isNull(timedItem->timeFraction())); 187 EXPECT_TRUE(isNull(timedItem->timeFraction()));
188 188
189 timedItem->updateInheritedTime(2); 189 timedItem->updateInheritedTime(2);
190 EXPECT_EQ(1, timedItem->timeFraction()); 190 EXPECT_EQ(1, timedItem->timeFraction());
191 } 191 }
192 192
193 TEST(AnimationTimedItemTest, FillBackwards) 193 TEST(AnimationTimedItemTest, FillBackwards)
194 { 194 {
195 Timing timing; 195 Timing timing;
196 timing.iterationDuration = 1; 196 timing.iterationDuration = 1;
197 timing.fillMode = Timing::FillModeBackwards; 197 timing.fillMode = Timing::FillModeBackwards;
198 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 198 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
199 199
200 timedItem->updateInheritedTime(-1); 200 timedItem->updateInheritedTime(-1);
201 EXPECT_EQ(0, timedItem->timeFraction()); 201 EXPECT_EQ(0, timedItem->timeFraction());
202 202
203 timedItem->updateInheritedTime(2); 203 timedItem->updateInheritedTime(2);
204 EXPECT_TRUE(isNull(timedItem->timeFraction())); 204 EXPECT_TRUE(isNull(timedItem->timeFraction()));
205 } 205 }
206 206
207 TEST(AnimationTimedItemTest, FillBoth) 207 TEST(AnimationTimedItemTest, FillBoth)
208 { 208 {
209 Timing timing; 209 Timing timing;
210 timing.iterationDuration = 1; 210 timing.iterationDuration = 1;
211 timing.fillMode = Timing::FillModeBoth; 211 timing.fillMode = Timing::FillModeBoth;
212 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 212 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
213 213
214 timedItem->updateInheritedTime(-1); 214 timedItem->updateInheritedTime(-1);
215 EXPECT_EQ(0, timedItem->timeFraction()); 215 EXPECT_EQ(0, timedItem->timeFraction());
216 216
217 timedItem->updateInheritedTime(2); 217 timedItem->updateInheritedTime(2);
218 EXPECT_EQ(1, timedItem->timeFraction()); 218 EXPECT_EQ(1, timedItem->timeFraction());
219 } 219 }
220 220
221 TEST(AnimationTimedItemTest, StartDelay) 221 TEST(AnimationTimedItemTest, StartDelay)
222 { 222 {
223 Timing timing; 223 Timing timing;
224 timing.iterationDuration = 1; 224 timing.iterationDuration = 1;
225 timing.fillMode = Timing::FillModeForwards; 225 timing.fillMode = Timing::FillModeForwards;
226 timing.startDelay = 0.5; 226 timing.startDelay = 0.5;
227 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 227 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
228 228
229 timedItem->updateInheritedTime(0); 229 timedItem->updateInheritedTime(0);
230 EXPECT_TRUE(isNull(timedItem->timeFraction())); 230 EXPECT_TRUE(isNull(timedItem->timeFraction()));
231 231
232 timedItem->updateInheritedTime(0.5); 232 timedItem->updateInheritedTime(0.5);
233 EXPECT_EQ(0, timedItem->timeFraction()); 233 EXPECT_EQ(0, timedItem->timeFraction());
234 234
235 timedItem->updateInheritedTime(1.5); 235 timedItem->updateInheritedTime(1.5);
236 EXPECT_EQ(1, timedItem->timeFraction()); 236 EXPECT_EQ(1, timedItem->timeFraction());
237 } 237 }
238 238
239 TEST(AnimationTimedItemTest, ZeroIteration) 239 TEST(AnimationTimedItemTest, ZeroIteration)
240 { 240 {
241 Timing timing; 241 Timing timing;
242 timing.iterationDuration = 1; 242 timing.iterationDuration = 1;
243 timing.fillMode = Timing::FillModeForwards; 243 timing.fillMode = Timing::FillModeForwards;
244 timing.iterationCount = 0; 244 timing.iterationCount = 0;
245 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 245 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
246 246
247 timedItem->updateInheritedTime(-1); 247 timedItem->updateInheritedTime(-1);
248 EXPECT_EQ(0, timedItem->activeDurationInternal()); 248 EXPECT_EQ(0, timedItem->activeDurationInternal());
249 EXPECT_TRUE(isNull(timedItem->currentIteration())); 249 EXPECT_TRUE(isNull(timedItem->currentIteration()));
250 EXPECT_TRUE(isNull(timedItem->timeFraction())); 250 EXPECT_TRUE(isNull(timedItem->timeFraction()));
251 251
252 timedItem->updateInheritedTime(0); 252 timedItem->updateInheritedTime(0);
253 EXPECT_EQ(0, timedItem->activeDurationInternal()); 253 EXPECT_EQ(0, timedItem->activeDurationInternal());
254 EXPECT_EQ(0, timedItem->currentIteration()); 254 EXPECT_EQ(0, timedItem->currentIteration());
255 EXPECT_EQ(0, timedItem->timeFraction()); 255 EXPECT_EQ(0, timedItem->timeFraction());
256 } 256 }
257 257
258 TEST(AnimationTimedItemTest, InfiniteIteration) 258 TEST(AnimationTimedItemTest, InfiniteIteration)
259 { 259 {
260 Timing timing; 260 Timing timing;
261 timing.iterationDuration = 1; 261 timing.iterationDuration = 1;
262 timing.fillMode = Timing::FillModeForwards; 262 timing.fillMode = Timing::FillModeForwards;
263 timing.iterationCount = std::numeric_limits<double>::infinity(); 263 timing.iterationCount = std::numeric_limits<double>::infinity();
264 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 264 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
265 265
266 timedItem->updateInheritedTime(-1); 266 timedItem->updateInheritedTime(-1);
267 EXPECT_TRUE(isNull(timedItem->currentIteration())); 267 EXPECT_TRUE(isNull(timedItem->currentIteration()));
268 EXPECT_TRUE(isNull(timedItem->timeFraction())); 268 EXPECT_TRUE(isNull(timedItem->timeFraction()));
269 269
270 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal()); 270 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal());
271 271
272 timedItem->updateInheritedTime(0); 272 timedItem->updateInheritedTime(0);
273 EXPECT_EQ(0, timedItem->currentIteration()); 273 EXPECT_EQ(0, timedItem->currentIteration());
274 EXPECT_EQ(0, timedItem->timeFraction()); 274 EXPECT_EQ(0, timedItem->timeFraction());
275 } 275 }
276 276
277 TEST(AnimationTimedItemTest, Iteration) 277 TEST(AnimationTimedItemTest, Iteration)
278 { 278 {
279 Timing timing; 279 Timing timing;
280 timing.iterationCount = 2; 280 timing.iterationCount = 2;
281 timing.iterationDuration = 2; 281 timing.iterationDuration = 2;
282 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 282 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
283 283
284 timedItem->updateInheritedTime(0); 284 timedItem->updateInheritedTime(0);
285 EXPECT_EQ(0, timedItem->currentIteration()); 285 EXPECT_EQ(0, timedItem->currentIteration());
286 EXPECT_EQ(0, timedItem->timeFraction()); 286 EXPECT_EQ(0, timedItem->timeFraction());
287 287
288 timedItem->updateInheritedTime(1); 288 timedItem->updateInheritedTime(1);
289 EXPECT_EQ(0, timedItem->currentIteration()); 289 EXPECT_EQ(0, timedItem->currentIteration());
290 EXPECT_EQ(0.5, timedItem->timeFraction()); 290 EXPECT_EQ(0.5, timedItem->timeFraction());
291 291
292 timedItem->updateInheritedTime(2); 292 timedItem->updateInheritedTime(2);
293 EXPECT_EQ(1, timedItem->currentIteration()); 293 EXPECT_EQ(1, timedItem->currentIteration());
294 EXPECT_EQ(0, timedItem->timeFraction()); 294 EXPECT_EQ(0, timedItem->timeFraction());
295 295
296 timedItem->updateInheritedTime(2); 296 timedItem->updateInheritedTime(2);
297 EXPECT_EQ(1, timedItem->currentIteration()); 297 EXPECT_EQ(1, timedItem->currentIteration());
298 EXPECT_EQ(0, timedItem->timeFraction()); 298 EXPECT_EQ(0, timedItem->timeFraction());
299 299
300 timedItem->updateInheritedTime(5); 300 timedItem->updateInheritedTime(5);
301 EXPECT_EQ(1, timedItem->currentIteration()); 301 EXPECT_EQ(1, timedItem->currentIteration());
302 EXPECT_EQ(1, timedItem->timeFraction()); 302 EXPECT_EQ(1, timedItem->timeFraction());
303 } 303 }
304 304
305 TEST(AnimationTimedItemTest, IterationStart) 305 TEST(AnimationTimedItemTest, IterationStart)
306 { 306 {
307 Timing timing; 307 Timing timing;
308 timing.iterationStart = 1.2; 308 timing.iterationStart = 1.2;
309 timing.iterationCount = 2.2; 309 timing.iterationCount = 2.2;
310 timing.iterationDuration = 1; 310 timing.iterationDuration = 1;
311 timing.fillMode = Timing::FillModeBoth; 311 timing.fillMode = Timing::FillModeBoth;
312 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 312 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
313 313
314 timedItem->updateInheritedTime(-1); 314 timedItem->updateInheritedTime(-1);
315 EXPECT_EQ(1, timedItem->currentIteration()); 315 EXPECT_EQ(1, timedItem->currentIteration());
316 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001); 316 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001);
317 317
318 timedItem->updateInheritedTime(0); 318 timedItem->updateInheritedTime(0);
319 EXPECT_EQ(1, timedItem->currentIteration()); 319 EXPECT_EQ(1, timedItem->currentIteration());
320 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001); 320 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001);
321 321
322 timedItem->updateInheritedTime(10); 322 timedItem->updateInheritedTime(10);
323 EXPECT_EQ(3, timedItem->currentIteration()); 323 EXPECT_EQ(3, timedItem->currentIteration());
324 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001); 324 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001);
325 } 325 }
326 326
327 TEST(AnimationTimedItemTest, IterationAlternate) 327 TEST(AnimationTimedItemTest, IterationAlternate)
328 { 328 {
329 Timing timing; 329 Timing timing;
330 timing.iterationCount = 10; 330 timing.iterationCount = 10;
331 timing.iterationDuration = 1; 331 timing.iterationDuration = 1;
332 timing.direction = Timing::PlaybackDirectionAlternate; 332 timing.direction = Timing::PlaybackDirectionAlternate;
333 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 333 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
334 334
335 timedItem->updateInheritedTime(0.75); 335 timedItem->updateInheritedTime(0.75);
336 EXPECT_EQ(0, timedItem->currentIteration()); 336 EXPECT_EQ(0, timedItem->currentIteration());
337 EXPECT_EQ(0.75, timedItem->timeFraction()); 337 EXPECT_EQ(0.75, timedItem->timeFraction());
338 338
339 timedItem->updateInheritedTime(1.75); 339 timedItem->updateInheritedTime(1.75);
340 EXPECT_EQ(1, timedItem->currentIteration()); 340 EXPECT_EQ(1, timedItem->currentIteration());
341 EXPECT_EQ(0.25, timedItem->timeFraction()); 341 EXPECT_EQ(0.25, timedItem->timeFraction());
342 342
343 timedItem->updateInheritedTime(2.75); 343 timedItem->updateInheritedTime(2.75);
344 EXPECT_EQ(2, timedItem->currentIteration()); 344 EXPECT_EQ(2, timedItem->currentIteration());
345 EXPECT_EQ(0.75, timedItem->timeFraction()); 345 EXPECT_EQ(0.75, timedItem->timeFraction());
346 } 346 }
347 347
348 TEST(AnimationTimedItemTest, IterationAlternateReverse) 348 TEST(AnimationTimedItemTest, IterationAlternateReverse)
349 { 349 {
350 Timing timing; 350 Timing timing;
351 timing.iterationCount = 10; 351 timing.iterationCount = 10;
352 timing.iterationDuration = 1; 352 timing.iterationDuration = 1;
353 timing.direction = Timing::PlaybackDirectionAlternateReverse; 353 timing.direction = Timing::PlaybackDirectionAlternateReverse;
354 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 354 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
355 355
356 timedItem->updateInheritedTime(0.75); 356 timedItem->updateInheritedTime(0.75);
357 EXPECT_EQ(0, timedItem->currentIteration()); 357 EXPECT_EQ(0, timedItem->currentIteration());
358 EXPECT_EQ(0.25, timedItem->timeFraction()); 358 EXPECT_EQ(0.25, timedItem->timeFraction());
359 359
360 timedItem->updateInheritedTime(1.75); 360 timedItem->updateInheritedTime(1.75);
361 EXPECT_EQ(1, timedItem->currentIteration()); 361 EXPECT_EQ(1, timedItem->currentIteration());
362 EXPECT_EQ(0.75, timedItem->timeFraction()); 362 EXPECT_EQ(0.75, timedItem->timeFraction());
363 363
364 timedItem->updateInheritedTime(2.75); 364 timedItem->updateInheritedTime(2.75);
365 EXPECT_EQ(2, timedItem->currentIteration()); 365 EXPECT_EQ(2, timedItem->currentIteration());
366 EXPECT_EQ(0.25, timedItem->timeFraction()); 366 EXPECT_EQ(0.25, timedItem->timeFraction());
367 } 367 }
368 368
369 TEST(AnimationTimedItemTest, ZeroDurationSanity) 369 TEST(AnimationTimedItemTest, ZeroDurationSanity)
370 { 370 {
371 Timing timing; 371 Timing timing;
372 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 372 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
373 373
374 EXPECT_EQ(0, timedItem->startTime()); 374 EXPECT_EQ(0, timedItem->startTime());
375 375
376 timedItem->updateInheritedTime(0); 376 timedItem->updateInheritedTime(0);
377 377
378 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase()); 378 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase());
379 EXPECT_FALSE(timedItem->isInPlay()); 379 EXPECT_FALSE(timedItem->isInPlay());
380 EXPECT_FALSE(timedItem->isCurrent()); 380 EXPECT_FALSE(timedItem->isCurrent());
381 EXPECT_TRUE(timedItem->isInEffect()); 381 EXPECT_TRUE(timedItem->isInEffect());
382 EXPECT_EQ(0, timedItem->currentIteration()); 382 EXPECT_EQ(0, timedItem->currentIteration());
(...skipping 10 matching lines...) Expand all
393 EXPECT_EQ(0, timedItem->currentIteration()); 393 EXPECT_EQ(0, timedItem->currentIteration());
394 EXPECT_EQ(0, timedItem->startTime()); 394 EXPECT_EQ(0, timedItem->startTime());
395 EXPECT_EQ(0, timedItem->activeDurationInternal()); 395 EXPECT_EQ(0, timedItem->activeDurationInternal());
396 EXPECT_EQ(1, timedItem->timeFraction()); 396 EXPECT_EQ(1, timedItem->timeFraction());
397 } 397 }
398 398
399 TEST(AnimationTimedItemTest, ZeroDurationFillForwards) 399 TEST(AnimationTimedItemTest, ZeroDurationFillForwards)
400 { 400 {
401 Timing timing; 401 Timing timing;
402 timing.fillMode = Timing::FillModeForwards; 402 timing.fillMode = Timing::FillModeForwards;
403 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 403 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
404 404
405 timedItem->updateInheritedTime(-1); 405 timedItem->updateInheritedTime(-1);
406 EXPECT_TRUE(isNull(timedItem->timeFraction())); 406 EXPECT_TRUE(isNull(timedItem->timeFraction()));
407 407
408 timedItem->updateInheritedTime(0); 408 timedItem->updateInheritedTime(0);
409 EXPECT_EQ(1, timedItem->timeFraction()); 409 EXPECT_EQ(1, timedItem->timeFraction());
410 410
411 timedItem->updateInheritedTime(1); 411 timedItem->updateInheritedTime(1);
412 EXPECT_EQ(1, timedItem->timeFraction()); 412 EXPECT_EQ(1, timedItem->timeFraction());
413 } 413 }
414 414
415 TEST(AnimationTimedItemTest, ZeroDurationFillBackwards) 415 TEST(AnimationTimedItemTest, ZeroDurationFillBackwards)
416 { 416 {
417 Timing timing; 417 Timing timing;
418 timing.fillMode = Timing::FillModeBackwards; 418 timing.fillMode = Timing::FillModeBackwards;
419 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 419 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
420 420
421 timedItem->updateInheritedTime(-1); 421 timedItem->updateInheritedTime(-1);
422 EXPECT_EQ(0, timedItem->timeFraction()); 422 EXPECT_EQ(0, timedItem->timeFraction());
423 423
424 timedItem->updateInheritedTime(0); 424 timedItem->updateInheritedTime(0);
425 EXPECT_TRUE(isNull(timedItem->timeFraction())); 425 EXPECT_TRUE(isNull(timedItem->timeFraction()));
426 426
427 timedItem->updateInheritedTime(1); 427 timedItem->updateInheritedTime(1);
428 EXPECT_TRUE(isNull(timedItem->timeFraction())); 428 EXPECT_TRUE(isNull(timedItem->timeFraction()));
429 } 429 }
430 430
431 TEST(AnimationTimedItemTest, ZeroDurationFillBoth) 431 TEST(AnimationTimedItemTest, ZeroDurationFillBoth)
432 { 432 {
433 Timing timing; 433 Timing timing;
434 timing.fillMode = Timing::FillModeBoth; 434 timing.fillMode = Timing::FillModeBoth;
435 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 435 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
436 436
437 timedItem->updateInheritedTime(-1); 437 timedItem->updateInheritedTime(-1);
438 EXPECT_EQ(0, timedItem->timeFraction()); 438 EXPECT_EQ(0, timedItem->timeFraction());
439 439
440 timedItem->updateInheritedTime(0); 440 timedItem->updateInheritedTime(0);
441 EXPECT_EQ(1, timedItem->timeFraction()); 441 EXPECT_EQ(1, timedItem->timeFraction());
442 442
443 timedItem->updateInheritedTime(1); 443 timedItem->updateInheritedTime(1);
444 EXPECT_EQ(1, timedItem->timeFraction()); 444 EXPECT_EQ(1, timedItem->timeFraction());
445 } 445 }
446 446
447 TEST(AnimationTimedItemTest, ZeroDurationStartDelay) 447 TEST(AnimationTimedItemTest, ZeroDurationStartDelay)
448 { 448 {
449 Timing timing; 449 Timing timing;
450 timing.fillMode = Timing::FillModeForwards; 450 timing.fillMode = Timing::FillModeForwards;
451 timing.startDelay = 0.5; 451 timing.startDelay = 0.5;
452 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 452 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
453 453
454 timedItem->updateInheritedTime(0); 454 timedItem->updateInheritedTime(0);
455 EXPECT_TRUE(isNull(timedItem->timeFraction())); 455 EXPECT_TRUE(isNull(timedItem->timeFraction()));
456 456
457 timedItem->updateInheritedTime(0.5); 457 timedItem->updateInheritedTime(0.5);
458 EXPECT_EQ(1, timedItem->timeFraction()); 458 EXPECT_EQ(1, timedItem->timeFraction());
459 459
460 timedItem->updateInheritedTime(1.5); 460 timedItem->updateInheritedTime(1.5);
461 EXPECT_EQ(1, timedItem->timeFraction()); 461 EXPECT_EQ(1, timedItem->timeFraction());
462 } 462 }
463 463
464 TEST(AnimationTimedItemTest, ZeroDurationIterationStartAndCount) 464 TEST(AnimationTimedItemTest, ZeroDurationIterationStartAndCount)
465 { 465 {
466 Timing timing; 466 Timing timing;
467 timing.iterationStart = 0.1; 467 timing.iterationStart = 0.1;
468 timing.iterationCount = 0.2; 468 timing.iterationCount = 0.2;
469 timing.fillMode = Timing::FillModeBoth; 469 timing.fillMode = Timing::FillModeBoth;
470 timing.startDelay = 0.3; 470 timing.startDelay = 0.3;
471 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 471 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
472 472
473 timedItem->updateInheritedTime(0); 473 timedItem->updateInheritedTime(0);
474 EXPECT_EQ(0.1, timedItem->timeFraction()); 474 EXPECT_EQ(0.1, timedItem->timeFraction());
475 475
476 timedItem->updateInheritedTime(0.3); 476 timedItem->updateInheritedTime(0.3);
477 EXPECT_DOUBLE_EQ(0.3, timedItem->timeFraction()); 477 EXPECT_DOUBLE_EQ(0.3, timedItem->timeFraction());
478 478
479 timedItem->updateInheritedTime(1); 479 timedItem->updateInheritedTime(1);
480 EXPECT_DOUBLE_EQ(0.3, timedItem->timeFraction()); 480 EXPECT_DOUBLE_EQ(0.3, timedItem->timeFraction());
481 } 481 }
482 482
483 // FIXME: Needs specification work. 483 // FIXME: Needs specification work.
484 TEST(AnimationTimedItemTest, ZeroDurationInfiniteIteration) 484 TEST(AnimationTimedItemTest, ZeroDurationInfiniteIteration)
485 { 485 {
486 Timing timing; 486 Timing timing;
487 timing.fillMode = Timing::FillModeForwards; 487 timing.fillMode = Timing::FillModeForwards;
488 timing.iterationCount = std::numeric_limits<double>::infinity(); 488 timing.iterationCount = std::numeric_limits<double>::infinity();
489 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 489 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
490 490
491 timedItem->updateInheritedTime(-1); 491 timedItem->updateInheritedTime(-1);
492 EXPECT_EQ(0, timedItem->activeDurationInternal()); 492 EXPECT_EQ(0, timedItem->activeDurationInternal());
493 EXPECT_TRUE(isNull(timedItem->currentIteration())); 493 EXPECT_TRUE(isNull(timedItem->currentIteration()));
494 EXPECT_TRUE(isNull(timedItem->timeFraction())); 494 EXPECT_TRUE(isNull(timedItem->timeFraction()));
495 495
496 timedItem->updateInheritedTime(0); 496 timedItem->updateInheritedTime(0);
497 EXPECT_EQ(0, timedItem->activeDurationInternal()); 497 EXPECT_EQ(0, timedItem->activeDurationInternal());
498 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->currentIterati on()); 498 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->currentIterati on());
499 EXPECT_EQ(1, timedItem->timeFraction()); 499 EXPECT_EQ(1, timedItem->timeFraction());
500 } 500 }
501 501
502 TEST(AnimationTimedItemTest, ZeroDurationIteration) 502 TEST(AnimationTimedItemTest, ZeroDurationIteration)
503 { 503 {
504 Timing timing; 504 Timing timing;
505 timing.fillMode = Timing::FillModeForwards; 505 timing.fillMode = Timing::FillModeForwards;
506 timing.iterationCount = 2; 506 timing.iterationCount = 2;
507 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 507 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
508 508
509 timedItem->updateInheritedTime(-1); 509 timedItem->updateInheritedTime(-1);
510 EXPECT_TRUE(isNull(timedItem->currentIteration())); 510 EXPECT_TRUE(isNull(timedItem->currentIteration()));
511 EXPECT_TRUE(isNull(timedItem->timeFraction())); 511 EXPECT_TRUE(isNull(timedItem->timeFraction()));
512 512
513 timedItem->updateInheritedTime(0); 513 timedItem->updateInheritedTime(0);
514 EXPECT_EQ(1, timedItem->currentIteration()); 514 EXPECT_EQ(1, timedItem->currentIteration());
515 EXPECT_EQ(1, timedItem->timeFraction()); 515 EXPECT_EQ(1, timedItem->timeFraction());
516 516
517 timedItem->updateInheritedTime(1); 517 timedItem->updateInheritedTime(1);
518 EXPECT_EQ(1, timedItem->currentIteration()); 518 EXPECT_EQ(1, timedItem->currentIteration());
519 EXPECT_EQ(1, timedItem->timeFraction()); 519 EXPECT_EQ(1, timedItem->timeFraction());
520 } 520 }
521 521
522 TEST(AnimationTimedItemTest, ZeroDurationIterationStart) 522 TEST(AnimationTimedItemTest, ZeroDurationIterationStart)
523 { 523 {
524 Timing timing; 524 Timing timing;
525 timing.iterationStart = 1.2; 525 timing.iterationStart = 1.2;
526 timing.iterationCount = 2.2; 526 timing.iterationCount = 2.2;
527 timing.fillMode = Timing::FillModeBoth; 527 timing.fillMode = Timing::FillModeBoth;
528 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 528 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
529 529
530 timedItem->updateInheritedTime(-1); 530 timedItem->updateInheritedTime(-1);
531 EXPECT_EQ(1, timedItem->currentIteration()); 531 EXPECT_EQ(1, timedItem->currentIteration());
532 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001); 532 EXPECT_NEAR(0.2, timedItem->timeFraction(), 0.000000000000001);
533 533
534 timedItem->updateInheritedTime(0); 534 timedItem->updateInheritedTime(0);
535 EXPECT_EQ(3, timedItem->currentIteration()); 535 EXPECT_EQ(3, timedItem->currentIteration());
536 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001); 536 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001);
537 537
538 timedItem->updateInheritedTime(10); 538 timedItem->updateInheritedTime(10);
539 EXPECT_EQ(3, timedItem->currentIteration()); 539 EXPECT_EQ(3, timedItem->currentIteration());
540 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001); 540 EXPECT_NEAR(0.4, timedItem->timeFraction(), 0.000000000000001);
541 } 541 }
542 542
543 TEST(AnimationTimedItemTest, ZeroDurationIterationAlternate) 543 TEST(AnimationTimedItemTest, ZeroDurationIterationAlternate)
544 { 544 {
545 Timing timing; 545 Timing timing;
546 timing.fillMode = Timing::FillModeForwards; 546 timing.fillMode = Timing::FillModeForwards;
547 timing.iterationCount = 2; 547 timing.iterationCount = 2;
548 timing.direction = Timing::PlaybackDirectionAlternate; 548 timing.direction = Timing::PlaybackDirectionAlternate;
549 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 549 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
550 550
551 timedItem->updateInheritedTime(-1); 551 timedItem->updateInheritedTime(-1);
552 EXPECT_TRUE(isNull(timedItem->currentIteration())); 552 EXPECT_TRUE(isNull(timedItem->currentIteration()));
553 EXPECT_TRUE(isNull(timedItem->timeFraction())); 553 EXPECT_TRUE(isNull(timedItem->timeFraction()));
554 554
555 timedItem->updateInheritedTime(0); 555 timedItem->updateInheritedTime(0);
556 EXPECT_EQ(1, timedItem->currentIteration()); 556 EXPECT_EQ(1, timedItem->currentIteration());
557 EXPECT_EQ(0, timedItem->timeFraction()); 557 EXPECT_EQ(0, timedItem->timeFraction());
558 558
559 timedItem->updateInheritedTime(1); 559 timedItem->updateInheritedTime(1);
560 EXPECT_EQ(1, timedItem->currentIteration()); 560 EXPECT_EQ(1, timedItem->currentIteration());
561 EXPECT_EQ(0, timedItem->timeFraction()); 561 EXPECT_EQ(0, timedItem->timeFraction());
562 } 562 }
563 563
564 TEST(AnimationTimedItemTest, ZeroDurationIterationAlternateReverse) 564 TEST(AnimationTimedItemTest, ZeroDurationIterationAlternateReverse)
565 { 565 {
566 Timing timing; 566 Timing timing;
567 timing.fillMode = Timing::FillModeForwards; 567 timing.fillMode = Timing::FillModeForwards;
568 timing.iterationCount = 2; 568 timing.iterationCount = 2;
569 timing.direction = Timing::PlaybackDirectionAlternateReverse; 569 timing.direction = Timing::PlaybackDirectionAlternateReverse;
570 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 570 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
571 571
572 timedItem->updateInheritedTime(-1); 572 timedItem->updateInheritedTime(-1);
573 EXPECT_TRUE(isNull(timedItem->currentIteration())); 573 EXPECT_TRUE(isNull(timedItem->currentIteration()));
574 EXPECT_TRUE(isNull(timedItem->timeFraction())); 574 EXPECT_TRUE(isNull(timedItem->timeFraction()));
575 575
576 timedItem->updateInheritedTime(0); 576 timedItem->updateInheritedTime(0);
577 EXPECT_EQ(1, timedItem->currentIteration()); 577 EXPECT_EQ(1, timedItem->currentIteration());
578 EXPECT_EQ(1, timedItem->timeFraction()); 578 EXPECT_EQ(1, timedItem->timeFraction());
579 579
580 timedItem->updateInheritedTime(1); 580 timedItem->updateInheritedTime(1);
581 EXPECT_EQ(1, timedItem->currentIteration()); 581 EXPECT_EQ(1, timedItem->currentIteration());
582 EXPECT_EQ(1, timedItem->timeFraction()); 582 EXPECT_EQ(1, timedItem->timeFraction());
583 } 583 }
584 584
585 TEST(AnimationTimedItemTest, InfiniteDurationSanity) 585 TEST(AnimationTimedItemTest, InfiniteDurationSanity)
586 { 586 {
587 Timing timing; 587 Timing timing;
588 timing.iterationDuration = std::numeric_limits<double>::infinity(); 588 timing.iterationDuration = std::numeric_limits<double>::infinity();
589 timing.iterationCount = 1; 589 timing.iterationCount = 1;
590 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 590 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
591 591
592 EXPECT_EQ(0, timedItem->startTime()); 592 EXPECT_EQ(0, timedItem->startTime());
593 593
594 timedItem->updateInheritedTime(0); 594 timedItem->updateInheritedTime(0);
595 595
596 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal()); 596 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal());
597 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 597 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
598 EXPECT_TRUE(timedItem->isInPlay()); 598 EXPECT_TRUE(timedItem->isInPlay());
599 EXPECT_TRUE(timedItem->isCurrent()); 599 EXPECT_TRUE(timedItem->isCurrent());
600 EXPECT_TRUE(timedItem->isInEffect()); 600 EXPECT_TRUE(timedItem->isInEffect());
(...skipping 10 matching lines...) Expand all
611 EXPECT_EQ(0, timedItem->currentIteration()); 611 EXPECT_EQ(0, timedItem->currentIteration());
612 EXPECT_EQ(0, timedItem->timeFraction()); 612 EXPECT_EQ(0, timedItem->timeFraction());
613 } 613 }
614 614
615 // FIXME: Needs specification work. 615 // FIXME: Needs specification work.
616 TEST(AnimationTimedItemTest, InfiniteDurationZeroIterations) 616 TEST(AnimationTimedItemTest, InfiniteDurationZeroIterations)
617 { 617 {
618 Timing timing; 618 Timing timing;
619 timing.iterationDuration = std::numeric_limits<double>::infinity(); 619 timing.iterationDuration = std::numeric_limits<double>::infinity();
620 timing.iterationCount = 0; 620 timing.iterationCount = 0;
621 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 621 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
622 622
623 EXPECT_EQ(0, timedItem->startTime()); 623 EXPECT_EQ(0, timedItem->startTime());
624 624
625 timedItem->updateInheritedTime(0); 625 timedItem->updateInheritedTime(0);
626 626
627 EXPECT_EQ(0, timedItem->activeDurationInternal()); 627 EXPECT_EQ(0, timedItem->activeDurationInternal());
628 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase()); 628 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase());
629 EXPECT_FALSE(timedItem->isInPlay()); 629 EXPECT_FALSE(timedItem->isInPlay());
630 EXPECT_FALSE(timedItem->isCurrent()); 630 EXPECT_FALSE(timedItem->isCurrent());
631 EXPECT_TRUE(timedItem->isInEffect()); 631 EXPECT_TRUE(timedItem->isInEffect());
632 EXPECT_EQ(0, timedItem->currentIteration()); 632 EXPECT_EQ(0, timedItem->currentIteration());
633 EXPECT_EQ(0, timedItem->timeFraction()); 633 EXPECT_EQ(0, timedItem->timeFraction());
634 634
635 timedItem->updateInheritedTime(1); 635 timedItem->updateInheritedTime(1);
636 636
637 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase()); 637 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase());
638 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase()); 638 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase());
639 EXPECT_FALSE(timedItem->isInPlay()); 639 EXPECT_FALSE(timedItem->isInPlay());
640 EXPECT_FALSE(timedItem->isCurrent()); 640 EXPECT_FALSE(timedItem->isCurrent());
641 EXPECT_TRUE(timedItem->isInEffect()); 641 EXPECT_TRUE(timedItem->isInEffect());
642 EXPECT_EQ(0, timedItem->currentIteration()); 642 EXPECT_EQ(0, timedItem->currentIteration());
643 EXPECT_EQ(0, timedItem->timeFraction()); 643 EXPECT_EQ(0, timedItem->timeFraction());
644 } 644 }
645 645
646 TEST(AnimationTimedItemTest, InfiniteDurationInfiniteIterations) 646 TEST(AnimationTimedItemTest, InfiniteDurationInfiniteIterations)
647 { 647 {
648 Timing timing; 648 Timing timing;
649 timing.iterationDuration = std::numeric_limits<double>::infinity(); 649 timing.iterationDuration = std::numeric_limits<double>::infinity();
650 timing.iterationCount = std::numeric_limits<double>::infinity(); 650 timing.iterationCount = std::numeric_limits<double>::infinity();
651 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 651 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
652 652
653 EXPECT_EQ(0, timedItem->startTime()); 653 EXPECT_EQ(0, timedItem->startTime());
654 654
655 timedItem->updateInheritedTime(0); 655 timedItem->updateInheritedTime(0);
656 656
657 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal()); 657 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal());
658 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 658 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
659 EXPECT_TRUE(timedItem->isInPlay()); 659 EXPECT_TRUE(timedItem->isInPlay());
660 EXPECT_TRUE(timedItem->isCurrent()); 660 EXPECT_TRUE(timedItem->isCurrent());
661 EXPECT_TRUE(timedItem->isInEffect()); 661 EXPECT_TRUE(timedItem->isInEffect());
662 EXPECT_EQ(0, timedItem->currentIteration()); 662 EXPECT_EQ(0, timedItem->currentIteration());
663 EXPECT_EQ(0, timedItem->timeFraction()); 663 EXPECT_EQ(0, timedItem->timeFraction());
664 664
665 timedItem->updateInheritedTime(1); 665 timedItem->updateInheritedTime(1);
666 666
667 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal()); 667 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal());
668 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 668 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
669 EXPECT_TRUE(timedItem->isInPlay()); 669 EXPECT_TRUE(timedItem->isInPlay());
670 EXPECT_TRUE(timedItem->isCurrent()); 670 EXPECT_TRUE(timedItem->isCurrent());
671 EXPECT_TRUE(timedItem->isInEffect()); 671 EXPECT_TRUE(timedItem->isInEffect());
672 EXPECT_EQ(0, timedItem->currentIteration()); 672 EXPECT_EQ(0, timedItem->currentIteration());
673 EXPECT_EQ(0, timedItem->timeFraction()); 673 EXPECT_EQ(0, timedItem->timeFraction());
674 } 674 }
675 675
676 TEST(AnimationTimedItemTest, InfiniteDurationZeroPlaybackRate) 676 TEST(AnimationTimedItemTest, InfiniteDurationZeroPlaybackRate)
677 { 677 {
678 Timing timing; 678 Timing timing;
679 timing.iterationDuration = std::numeric_limits<double>::infinity(); 679 timing.iterationDuration = std::numeric_limits<double>::infinity();
680 timing.playbackRate = 0; 680 timing.playbackRate = 0;
681 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 681 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
682 682
683 EXPECT_EQ(0, timedItem->startTime()); 683 EXPECT_EQ(0, timedItem->startTime());
684 684
685 timedItem->updateInheritedTime(0); 685 timedItem->updateInheritedTime(0);
686 686
687 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal()); 687 EXPECT_EQ(std::numeric_limits<double>::infinity(), timedItem->activeDuration Internal());
688 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 688 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
689 EXPECT_TRUE(timedItem->isInPlay()); 689 EXPECT_TRUE(timedItem->isInPlay());
690 EXPECT_TRUE(timedItem->isCurrent()); 690 EXPECT_TRUE(timedItem->isCurrent());
691 EXPECT_TRUE(timedItem->isInEffect()); 691 EXPECT_TRUE(timedItem->isInEffect());
(...skipping 11 matching lines...) Expand all
703 EXPECT_EQ(0, timedItem->timeFraction()); 703 EXPECT_EQ(0, timedItem->timeFraction());
704 } 704 }
705 705
706 TEST(AnimationTimedItemTest, EndTime) 706 TEST(AnimationTimedItemTest, EndTime)
707 { 707 {
708 Timing timing; 708 Timing timing;
709 timing.startDelay = 1; 709 timing.startDelay = 1;
710 timing.endDelay = 2; 710 timing.endDelay = 2;
711 timing.iterationDuration = 4; 711 timing.iterationDuration = 4;
712 timing.iterationCount = 2; 712 timing.iterationCount = 2;
713 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 713 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
714 EXPECT_EQ(11, timedItem->endTimeInternal()); 714 EXPECT_EQ(11, timedItem->endTimeInternal());
715 } 715 }
716 716
717 TEST(AnimationTimedItemTest, Events) 717 TEST(AnimationTimedItemTest, Events)
718 { 718 {
719 Timing timing; 719 Timing timing;
720 timing.iterationDuration = 1; 720 timing.iterationDuration = 1;
721 timing.fillMode = Timing::FillModeForwards; 721 timing.fillMode = Timing::FillModeForwards;
722 timing.iterationCount = 2; 722 timing.iterationCount = 2;
723 timing.startDelay = 1; 723 timing.startDelay = 1;
724 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 724 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
725 725
726 // First sample 726 // First sample
727 timedItem->updateInheritedTime(0.0); 727 timedItem->updateInheritedTime(0.0);
728 EXPECT_TRUE(timedItem->eventDelegate()->eventTriggered()); 728 EXPECT_TRUE(timedItem->eventDelegate()->eventTriggered());
729 729
730 // Before start 730 // Before start
731 timedItem->updateInheritedTime(0.5); 731 timedItem->updateInheritedTime(0.5);
732 EXPECT_FALSE(timedItem->eventDelegate()->eventTriggered()); 732 EXPECT_FALSE(timedItem->eventDelegate()->eventTriggered());
733 733
734 // First iteration 734 // First iteration
(...skipping 26 matching lines...) Expand all
761 761
762 TEST(AnimationTimedItemTest, TimeToEffectChange) 762 TEST(AnimationTimedItemTest, TimeToEffectChange)
763 { 763 {
764 Timing timing; 764 Timing timing;
765 timing.iterationDuration = 1; 765 timing.iterationDuration = 1;
766 timing.fillMode = Timing::FillModeForwards; 766 timing.fillMode = Timing::FillModeForwards;
767 timing.iterationStart = 0.2; 767 timing.iterationStart = 0.2;
768 timing.iterationCount = 2.5; 768 timing.iterationCount = 2.5;
769 timing.startDelay = 1; 769 timing.startDelay = 1;
770 timing.direction = Timing::PlaybackDirectionAlternate; 770 timing.direction = Timing::PlaybackDirectionAlternate;
771 RefPtr<TestTimedItem> timedItem = TestTimedItem::create(timing); 771 RefPtrWillBeRawPtr<TestTimedItem> timedItem = TestTimedItem::create(timing);
772 772
773 timedItem->updateInheritedTime(0); 773 timedItem->updateInheritedTime(0);
774 EXPECT_EQ(0, timedItem->takeLocalTime()); 774 EXPECT_EQ(0, timedItem->takeLocalTime());
775 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration())); 775 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration()));
776 776
777 // Normal iteration. 777 // Normal iteration.
778 timedItem->updateInheritedTime(1.75); 778 timedItem->updateInheritedTime(1.75);
779 EXPECT_EQ(1.75, timedItem->takeLocalTime()); 779 EXPECT_EQ(1.75, timedItem->takeLocalTime());
780 EXPECT_NEAR(0.05, timedItem->takeTimeToNextIteration(), 0.000000000000001); 780 EXPECT_NEAR(0.05, timedItem->takeTimeToNextIteration(), 0.000000000000001);
781 781
782 // Reverse iteration. 782 // Reverse iteration.
783 timedItem->updateInheritedTime(2.75); 783 timedItem->updateInheritedTime(2.75);
784 EXPECT_EQ(2.75, timedItem->takeLocalTime()); 784 EXPECT_EQ(2.75, timedItem->takeLocalTime());
785 EXPECT_NEAR(0.05, timedItem->takeTimeToNextIteration(), 0.000000000000001); 785 EXPECT_NEAR(0.05, timedItem->takeTimeToNextIteration(), 0.000000000000001);
786 786
787 // Item ends before iteration finishes. 787 // Item ends before iteration finishes.
788 timedItem->updateInheritedTime(3.4); 788 timedItem->updateInheritedTime(3.4);
789 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase()); 789 EXPECT_EQ(TimedItem::PhaseActive, timedItem->phase());
790 EXPECT_EQ(3.4, timedItem->takeLocalTime()); 790 EXPECT_EQ(3.4, timedItem->takeLocalTime());
791 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration())); 791 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration()));
792 792
793 // Item has finished. 793 // Item has finished.
794 timedItem->updateInheritedTime(3.5); 794 timedItem->updateInheritedTime(3.5);
795 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase()); 795 EXPECT_EQ(TimedItem::PhaseAfter, timedItem->phase());
796 EXPECT_EQ(3.5, timedItem->takeLocalTime()); 796 EXPECT_EQ(3.5, timedItem->takeLocalTime());
797 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration())); 797 EXPECT_TRUE(std::isinf(timedItem->takeTimeToNextIteration()));
798 } 798 }
799 799
800 } 800 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698