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

Side by Side Diff: third_party/WebKit/Source/wtf/DequeTest.cpp

Issue 2749753002: Migrate WTF::Deque::removeFirst() to ::pop_front() (Closed)
Patch Set: Created 3 years, 9 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 | « third_party/WebKit/Source/wtf/Deque.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2011 Apple 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 auto it = deque.begin(); 197 auto it = deque.begin();
198 for (index = 0; index < deque.size(); ++index) { 198 for (index = 0; index < deque.size(); ++index) {
199 std::unique_ptr<DestructCounter>& refCounter = *it; 199 std::unique_ptr<DestructCounter>& refCounter = *it;
200 EXPECT_EQ(index, static_cast<size_t>(refCounter->get())); 200 EXPECT_EQ(index, static_cast<size_t>(refCounter->get()));
201 index++; 201 index++;
202 ++it; 202 ++it;
203 } 203 }
204 EXPECT_EQ(0, destructNumber); 204 EXPECT_EQ(0, destructNumber);
205 205
206 EXPECT_EQ(0, deque.first()->get()); 206 EXPECT_EQ(0, deque.first()->get());
207 deque.removeFirst(); 207 deque.pop_front();
208 EXPECT_EQ(1, deque.first()->get()); 208 EXPECT_EQ(1, deque.first()->get());
209 EXPECT_EQ(1u, deque.size()); 209 EXPECT_EQ(1u, deque.size());
210 EXPECT_EQ(1, destructNumber); 210 EXPECT_EQ(1, destructNumber);
211 211
212 std::unique_ptr<DestructCounter> ownCounter1 = std::move(deque.first()); 212 std::unique_ptr<DestructCounter> ownCounter1 = std::move(deque.first());
213 deque.removeFirst(); 213 deque.pop_front();
214 EXPECT_EQ(counter1, ownCounter1->get()); 214 EXPECT_EQ(counter1, ownCounter1->get());
215 EXPECT_EQ(0u, deque.size()); 215 EXPECT_EQ(0u, deque.size());
216 EXPECT_EQ(1, destructNumber); 216 EXPECT_EQ(1, destructNumber);
217 217
218 ownCounter1.reset(); 218 ownCounter1.reset();
219 EXPECT_EQ(2, destructNumber); 219 EXPECT_EQ(2, destructNumber);
220 220
221 size_t count = 1025; 221 size_t count = 1025;
222 destructNumber = 0; 222 destructNumber = 0;
223 for (size_t i = 0; i < count; ++i) 223 for (size_t i = 0; i < count; ++i)
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 if (!interestingNumber(j)) 404 if (!interestingNumber(j))
405 continue; 405 continue;
406 deque.clear(); 406 deque.clear();
407 deque2.clear(); 407 deque2.clear();
408 EXPECT_EQ(0u, LivenessCounter::s_live); 408 EXPECT_EQ(0u, LivenessCounter::s_live);
409 for (unsigned k = 0; k < j; k++) 409 for (unsigned k = 0; k < j; k++)
410 deque.push_back(&counter); 410 deque.push_back(&counter);
411 EXPECT_EQ(j, LivenessCounter::s_live); 411 EXPECT_EQ(j, LivenessCounter::s_live);
412 EXPECT_EQ(j, deque.size()); 412 EXPECT_EQ(j, deque.size());
413 for (unsigned k = 0; k < i; k++) 413 for (unsigned k = 0; k < i; k++)
414 deque.removeFirst(); 414 deque.pop_front();
415 415
416 EXPECT_EQ(j - i, LivenessCounter::s_live); 416 EXPECT_EQ(j - i, LivenessCounter::s_live);
417 EXPECT_EQ(j - i, deque.size()); 417 EXPECT_EQ(j - i, deque.size());
418 deque.swap(deque2); 418 deque.swap(deque2);
419 EXPECT_EQ(j - i, LivenessCounter::s_live); 419 EXPECT_EQ(j - i, LivenessCounter::s_live);
420 EXPECT_EQ(0u, deque.size()); 420 EXPECT_EQ(0u, deque.size());
421 EXPECT_EQ(j - i, deque2.size()); 421 EXPECT_EQ(j - i, deque2.size());
422 deque.swap(deque2); 422 deque.swap(deque2);
423 EXPECT_EQ(j - i, LivenessCounter::s_live); 423 EXPECT_EQ(j - i, LivenessCounter::s_live);
424 424
425 deque2.push_back(&counter); 425 deque2.push_back(&counter);
426 deque2.push_back(&counter); 426 deque2.push_back(&counter);
427 deque2.push_back(&counter); 427 deque2.push_back(&counter);
428 428
429 for (unsigned k = 0; k < 12; k++) { 429 for (unsigned k = 0; k < 12; k++) {
430 EXPECT_EQ(3 + j - i, LivenessCounter::s_live); 430 EXPECT_EQ(3 + j - i, LivenessCounter::s_live);
431 EXPECT_EQ(j - i, deque.size()); 431 EXPECT_EQ(j - i, deque.size());
432 EXPECT_EQ(3u, deque2.size()); 432 EXPECT_EQ(3u, deque2.size());
433 deque.swap(deque2); 433 deque.swap(deque2);
434 EXPECT_EQ(3 + j - i, LivenessCounter::s_live); 434 EXPECT_EQ(3 + j - i, LivenessCounter::s_live);
435 EXPECT_EQ(j - i, deque2.size()); 435 EXPECT_EQ(j - i, deque2.size());
436 EXPECT_EQ(3u, deque.size()); 436 EXPECT_EQ(3u, deque.size());
437 deque.swap(deque2); 437 deque.swap(deque2);
438 EXPECT_EQ(3 + j - i, LivenessCounter::s_live); 438 EXPECT_EQ(3 + j - i, LivenessCounter::s_live);
439 EXPECT_EQ(j - i, deque.size()); 439 EXPECT_EQ(j - i, deque.size());
440 EXPECT_EQ(3u, deque2.size()); 440 EXPECT_EQ(3u, deque2.size());
441 441
442 deque2.removeFirst(); 442 deque2.pop_front();
443 deque2.push_back(&counter); 443 deque2.push_back(&counter);
444 } 444 }
445 } 445 }
446 } 446 }
447 } 447 }
448 448
449 TEST(DequeTest, SwapWithConstructorsAndDestructors) { 449 TEST(DequeTest, SwapWithConstructorsAndDestructors) {
450 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<0>(); 450 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<0>();
451 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<4>(); 451 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<4>();
452 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<9>(); 452 testDestructorAndConstructorCallsWhenSwappingWithInlineCapacity<9>();
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 EXPECT_EQ(-1, *deque[1]); 519 EXPECT_EQ(-1, *deque[1]);
520 EXPECT_EQ(1, *deque[2]); 520 EXPECT_EQ(1, *deque[2]);
521 EXPECT_EQ(2, *deque[3]); 521 EXPECT_EQ(2, *deque[3]);
522 522
523 Pointer first(deque.takeFirst()); 523 Pointer first(deque.takeFirst());
524 EXPECT_EQ(-2, *first); 524 EXPECT_EQ(-2, *first);
525 Pointer last(deque.takeLast()); 525 Pointer last(deque.takeLast());
526 EXPECT_EQ(2, *last); 526 EXPECT_EQ(2, *last);
527 527
528 EXPECT_EQ(2u, deque.size()); 528 EXPECT_EQ(2u, deque.size());
529 deque.removeFirst(); 529 deque.pop_front();
530 deque.pop_back(); 530 deque.pop_back();
531 EXPECT_EQ(0u, deque.size()); 531 EXPECT_EQ(0u, deque.size());
532 532
533 deque.push_back(Pointer(new int(42))); 533 deque.push_back(Pointer(new int(42)));
534 deque[0] = Pointer(new int(24)); 534 deque[0] = Pointer(new int(24));
535 ASSERT_EQ(1u, deque.size()); 535 ASSERT_EQ(1u, deque.size());
536 EXPECT_EQ(24, *deque[0]); 536 EXPECT_EQ(24, *deque[0]);
537 537
538 deque.clear(); 538 deque.clear();
539 } 539 }
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
629 EXPECT_EQ(2u, deque.size()); 629 EXPECT_EQ(2u, deque.size());
630 EXPECT_EQ(3, deque[0].value1); 630 EXPECT_EQ(3, deque[0].value1);
631 EXPECT_EQ(4, deque[0].value2); 631 EXPECT_EQ(4, deque[0].value2);
632 EXPECT_EQ(1, deque[1].value1); 632 EXPECT_EQ(1, deque[1].value1);
633 EXPECT_EQ(2, deque[1].value2); 633 EXPECT_EQ(2, deque[1].value2);
634 } 634 }
635 635
636 } // anonymous namespace 636 } // anonymous namespace
637 637
638 } // namespace WTF 638 } // namespace WTF
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/wtf/Deque.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698