OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2016 The WebRTC Project Authors. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 TEST(TaskQueueTest, PostDelayed) { | 94 TEST(TaskQueueTest, PostDelayed) { |
95 static const char kQueueName[] = "PostDelayed"; | 95 static const char kQueueName[] = "PostDelayed"; |
96 TaskQueue queue(kQueueName); | 96 TaskQueue queue(kQueueName); |
97 | 97 |
98 Event event(false, false); | 98 Event event(false, false); |
99 uint32_t start = Time(); | 99 uint32_t start = Time(); |
100 queue.PostDelayedTask(Bind(&CheckCurrent, kQueueName, &event, &queue), 100); | 100 queue.PostDelayedTask(Bind(&CheckCurrent, kQueueName, &event, &queue), 100); |
101 EXPECT_TRUE(event.Wait(1000)); | 101 EXPECT_TRUE(event.Wait(1000)); |
102 uint32_t end = Time(); | 102 uint32_t end = Time(); |
103 // These tests are a little relaxed due to how "powerful" our test bots can | 103 // These tests are a little relaxed due to how "powerful" our test bots can |
104 // be. Most recently we've seen windows bots fire the callback after 99ms, | 104 // be. Most recently we've seen windows bots fire the callback after 94-99ms, |
105 // which is why we have a little bit of leeway backwards as well. | 105 // which is why we have a little bit of leeway backwards as well. |
106 EXPECT_GE(end - start, 95u); | 106 EXPECT_GE(end - start, 90u); |
107 EXPECT_NEAR(end - start, 195u, 100u); // Accept 95-295. | 107 EXPECT_NEAR(end - start, 190u, 100u); // Accept 90-290. |
108 } | 108 } |
109 | 109 |
110 TEST(TaskQueueTest, PostMultipleDelayed) { | 110 TEST(TaskQueueTest, PostMultipleDelayed) { |
111 static const char kQueueName[] = "PostMultipleDelayed"; | 111 static const char kQueueName[] = "PostMultipleDelayed"; |
112 TaskQueue queue(kQueueName); | 112 TaskQueue queue(kQueueName); |
113 | 113 |
114 std::vector<std::unique_ptr<Event>> events; | 114 std::vector<std::unique_ptr<Event>> events; |
115 for (int i = 0; i < 10; ++i) { | 115 for (int i = 0; i < 10; ++i) { |
116 events.push_back(std::unique_ptr<Event>(new Event(false, false))); | 116 events.push_back(std::unique_ptr<Event>(new Event(false, false))); |
117 queue.PostDelayedTask( | 117 queue.PostDelayedTask( |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
252 queue.PostTask(NewClosure([&tasks_executed]() { ++tasks_executed; }, | 252 queue.PostTask(NewClosure([&tasks_executed]() { ++tasks_executed; }, |
253 [&tasks_cleaned_up]() { ++tasks_cleaned_up; })); | 253 [&tasks_cleaned_up]() { ++tasks_cleaned_up; })); |
254 event.Set(); // Unblock the first task. | 254 event.Set(); // Unblock the first task. |
255 } | 255 } |
256 | 256 |
257 EXPECT_GE(tasks_cleaned_up, tasks_executed); | 257 EXPECT_GE(tasks_cleaned_up, tasks_executed); |
258 EXPECT_EQ(kTaskCount, tasks_cleaned_up); | 258 EXPECT_EQ(kTaskCount, tasks_cleaned_up); |
259 } | 259 } |
260 | 260 |
261 } // namespace rtc | 261 } // namespace rtc |
OLD | NEW |