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 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 TEST(TaskQueueTest, PostFromQueue) { | 84 TEST(TaskQueueTest, PostFromQueue) { |
85 static const char kQueueName[] = "PostFromQueue"; | 85 static const char kQueueName[] = "PostFromQueue"; |
86 TaskQueue queue(kQueueName); | 86 TaskQueue queue(kQueueName); |
87 | 87 |
88 Event event(false, false); | 88 Event event(false, false); |
89 queue.PostTask( | 89 queue.PostTask( |
90 [&event, &queue]() { queue.PostTask([&event]() { event.Set(); }); }); | 90 [&event, &queue]() { queue.PostTask([&event]() { event.Set(); }); }); |
91 EXPECT_TRUE(event.Wait(1000)); | 91 EXPECT_TRUE(event.Wait(1000)); |
92 } | 92 } |
93 | 93 |
94 TEST(TaskQueueTest, DISABLED_PostDelayed) { | 94 // Currently flaky on Windows. See issue 6610. |
| 95 #if defined(WEBRTC_WIN) |
| 96 #define MAYBE_PostDelayed DISABLED_PostDelayed |
| 97 #else |
| 98 #define MAYBE_PostDelayed PostDelayed |
| 99 #endif |
| 100 TEST(TaskQueueTest, MAYBE_PostDelayed) { |
95 static const char kQueueName[] = "PostDelayed"; | 101 static const char kQueueName[] = "PostDelayed"; |
96 TaskQueue queue(kQueueName); | 102 TaskQueue queue(kQueueName); |
97 | 103 |
98 Event event(false, false); | 104 Event event(false, false); |
99 uint32_t start = Time(); | 105 uint32_t start = Time(); |
100 queue.PostDelayedTask(Bind(&CheckCurrent, kQueueName, &event, &queue), 100); | 106 queue.PostDelayedTask(Bind(&CheckCurrent, kQueueName, &event, &queue), 100); |
101 EXPECT_TRUE(event.Wait(1000)); | 107 EXPECT_TRUE(event.Wait(1000)); |
102 uint32_t end = Time(); | 108 uint32_t end = Time(); |
103 EXPECT_GE(end - start, 100u); | 109 EXPECT_GE(end - start, 100u); |
104 EXPECT_NEAR(end - start, 200u, 100u); // Accept 100-300. | 110 EXPECT_NEAR(end - start, 200u, 100u); // Accept 100-300. |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
249 queue.PostTask(NewClosure([&tasks_executed]() { ++tasks_executed; }, | 255 queue.PostTask(NewClosure([&tasks_executed]() { ++tasks_executed; }, |
250 [&tasks_cleaned_up]() { ++tasks_cleaned_up; })); | 256 [&tasks_cleaned_up]() { ++tasks_cleaned_up; })); |
251 event.Set(); // Unblock the first task. | 257 event.Set(); // Unblock the first task. |
252 } | 258 } |
253 | 259 |
254 EXPECT_GE(tasks_cleaned_up, tasks_executed); | 260 EXPECT_GE(tasks_cleaned_up, tasks_executed); |
255 EXPECT_EQ(kTaskCount, tasks_cleaned_up); | 261 EXPECT_EQ(kTaskCount, tasks_cleaned_up); |
256 } | 262 } |
257 | 263 |
258 } // namespace rtc | 264 } // namespace rtc |
OLD | NEW |