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

Side by Side Diff: extensions/browser/api/alarms/alarms_api_unittest.cc

Issue 2090063002: Remove calls to deprecated MessageLoop methods in extensions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 | « no previous file | extensions/browser/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 // This file tests the chrome.alarms extension API. 5 // This file tests the chrome.alarms extension API.
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/json/json_reader.h" 9 #include "base/json/json_reader.h"
10 #include "base/run_loop.h"
10 #include "base/test/simple_test_clock.h" 11 #include "base/test/simple_test_clock.h"
11 #include "base/values.h" 12 #include "base/values.h"
12 #include "content/public/browser/web_contents.h" 13 #include "content/public/browser/web_contents.h"
13 #include "content/public/test/mock_render_process_host.h" 14 #include "content/public/test/mock_render_process_host.h"
14 #include "extensions/browser/api/alarms/alarm_manager.h" 15 #include "extensions/browser/api/alarms/alarm_manager.h"
15 #include "extensions/browser/api/alarms/alarms_api.h" 16 #include "extensions/browser/api/alarms/alarms_api.h"
16 #include "extensions/browser/api/alarms/alarms_api_constants.h" 17 #include "extensions/browser/api/alarms/alarms_api_constants.h"
17 #include "extensions/browser/api_test_utils.h" 18 #include "extensions/browser/api_test_utils.h"
18 #include "extensions/browser/api_unittest.h" 19 #include "extensions/browser/api_unittest.h"
19 #include "extensions/common/extension_messages.h" 20 #include "extensions/common/extension_messages.h"
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 120
120 void ExtensionAlarmsTestGetAlarmCallback(ExtensionAlarmsTest* test, 121 void ExtensionAlarmsTestGetAlarmCallback(ExtensionAlarmsTest* test,
121 Alarm* alarm) { 122 Alarm* alarm) {
122 ASSERT_TRUE(alarm); 123 ASSERT_TRUE(alarm);
123 EXPECT_EQ("", alarm->js_alarm->name); 124 EXPECT_EQ("", alarm->js_alarm->name);
124 EXPECT_DOUBLE_EQ(10000, alarm->js_alarm->scheduled_time); 125 EXPECT_DOUBLE_EQ(10000, alarm->js_alarm->scheduled_time);
125 EXPECT_FALSE(alarm->js_alarm->period_in_minutes.get()); 126 EXPECT_FALSE(alarm->js_alarm->period_in_minutes.get());
126 127
127 // Now wait for the alarm to fire. Our test delegate will quit the 128 // Now wait for the alarm to fire. Our test delegate will quit the
128 // MessageLoop when that happens. 129 // MessageLoop when that happens.
129 base::MessageLoop::current()->Run(); 130 base::RunLoop().Run();
130 131
131 ASSERT_EQ(1u, test->alarm_delegate_->alarms_seen.size()); 132 ASSERT_EQ(1u, test->alarm_delegate_->alarms_seen.size());
132 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]); 133 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]);
133 134
134 // Ensure the alarm is gone. 135 // Ensure the alarm is gone.
135 test->alarm_manager_->GetAllAlarms( 136 test->alarm_manager_->GetAllAlarms(
136 test->extension()->id(), 137 test->extension()->id(),
137 base::Bind(ExtensionAlarmsTestGetAllAlarmsCallback)); 138 base::Bind(ExtensionAlarmsTestGetAllAlarmsCallback));
138 } 139 }
139 140
(...skipping 12 matching lines...) Expand all
152 Alarm* alarm) { 153 Alarm* alarm) {
153 ASSERT_TRUE(alarm); 154 ASSERT_TRUE(alarm);
154 EXPECT_EQ("", alarm->js_alarm->name); 155 EXPECT_EQ("", alarm->js_alarm->name);
155 EXPECT_DOUBLE_EQ(10060, alarm->js_alarm->scheduled_time); 156 EXPECT_DOUBLE_EQ(10060, alarm->js_alarm->scheduled_time);
156 EXPECT_THAT(alarm->js_alarm->period_in_minutes, 157 EXPECT_THAT(alarm->js_alarm->period_in_minutes,
157 testing::Pointee(testing::DoubleEq(0.001))); 158 testing::Pointee(testing::DoubleEq(0.001)));
158 159
159 test->test_clock_->Advance(base::TimeDelta::FromSeconds(1)); 160 test->test_clock_->Advance(base::TimeDelta::FromSeconds(1));
160 // Now wait for the alarm to fire. Our test delegate will quit the 161 // Now wait for the alarm to fire. Our test delegate will quit the
161 // MessageLoop when that happens. 162 // MessageLoop when that happens.
162 base::MessageLoop::current()->Run(); 163 base::RunLoop().Run();
163 164
164 test->test_clock_->Advance(base::TimeDelta::FromSeconds(1)); 165 test->test_clock_->Advance(base::TimeDelta::FromSeconds(1));
165 // Wait again, and ensure the alarm fires again. 166 // Wait again, and ensure the alarm fires again.
166 RunScheduleNextPoll(test->alarm_manager_); 167 RunScheduleNextPoll(test->alarm_manager_);
167 base::MessageLoop::current()->Run(); 168 base::RunLoop().Run();
168 169
169 ASSERT_EQ(2u, test->alarm_delegate_->alarms_seen.size()); 170 ASSERT_EQ(2u, test->alarm_delegate_->alarms_seen.size());
170 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]); 171 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]);
171 } 172 }
172 173
173 TEST_F(ExtensionAlarmsTest, CreateRepeating) { 174 TEST_F(ExtensionAlarmsTest, CreateRepeating) {
174 test_clock_->SetNow(base::Time::FromDoubleT(10)); 175 test_clock_->SetNow(base::Time::FromDoubleT(10));
175 176
176 // Create 1 repeating alarm. 177 // Create 1 repeating alarm.
177 CreateAlarm("[null, {\"periodInMinutes\": 0.001}]"); 178 CreateAlarm("[null, {\"periodInMinutes\": 0.001}]");
(...skipping 16 matching lines...) Expand all
194 ExtensionAlarmsTest* test, 195 ExtensionAlarmsTest* test,
195 Alarm* alarm) { 196 Alarm* alarm) {
196 ASSERT_TRUE(alarm); 197 ASSERT_TRUE(alarm);
197 EXPECT_EQ("", alarm->js_alarm->name); 198 EXPECT_EQ("", alarm->js_alarm->name);
198 EXPECT_DOUBLE_EQ(10001, alarm->js_alarm->scheduled_time); 199 EXPECT_DOUBLE_EQ(10001, alarm->js_alarm->scheduled_time);
199 EXPECT_THAT(alarm->js_alarm->period_in_minutes, testing::IsNull()); 200 EXPECT_THAT(alarm->js_alarm->period_in_minutes, testing::IsNull());
200 201
201 test->test_clock_->SetNow(base::Time::FromDoubleT(10.1)); 202 test->test_clock_->SetNow(base::Time::FromDoubleT(10.1));
202 // Now wait for the alarm to fire. Our test delegate will quit the 203 // Now wait for the alarm to fire. Our test delegate will quit the
203 // MessageLoop when that happens. 204 // MessageLoop when that happens.
204 base::MessageLoop::current()->Run(); 205 base::RunLoop().Run();
205 206
206 test->alarm_manager_->GetAlarm( 207 test->alarm_manager_->GetAlarm(
207 test->extension()->id(), std::string(), 208 test->extension()->id(), std::string(),
208 base::Bind(ExtensionAlarmsTestCreateAbsoluteGetAlarm2Callback, test)); 209 base::Bind(ExtensionAlarmsTestCreateAbsoluteGetAlarm2Callback, test));
209 } 210 }
210 211
211 TEST_F(ExtensionAlarmsTest, CreateAbsolute) { 212 TEST_F(ExtensionAlarmsTest, CreateAbsolute) {
212 test_clock_->SetNow(base::Time::FromDoubleT(9.99)); 213 test_clock_->SetNow(base::Time::FromDoubleT(9.99));
213 CreateAlarm("[null, {\"when\": 10001}]"); 214 CreateAlarm("[null, {\"when\": 10001}]");
214 215
215 alarm_manager_->GetAlarm( 216 alarm_manager_->GetAlarm(
216 extension()->id(), std::string(), 217 extension()->id(), std::string(),
217 base::Bind(ExtensionAlarmsTestCreateAbsoluteGetAlarm1Callback, this)); 218 base::Bind(ExtensionAlarmsTestCreateAbsoluteGetAlarm1Callback, this));
218 } 219 }
219 220
220 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm3Callback( 221 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm3Callback(
221 ExtensionAlarmsTest* test, 222 ExtensionAlarmsTest* test,
222 Alarm* alarm) { 223 Alarm* alarm) {
223 ASSERT_TRUE(alarm); 224 ASSERT_TRUE(alarm);
224 EXPECT_THAT(test->alarm_delegate_->alarms_seen, testing::ElementsAre("", "")); 225 EXPECT_THAT(test->alarm_delegate_->alarms_seen, testing::ElementsAre("", ""));
225 } 226 }
226 227
227 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm2Callback( 228 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm2Callback(
228 ExtensionAlarmsTest* test, 229 ExtensionAlarmsTest* test,
229 Alarm* alarm) { 230 Alarm* alarm) {
230 ASSERT_TRUE(alarm); 231 ASSERT_TRUE(alarm);
231 EXPECT_THAT(test->alarm_delegate_->alarms_seen, testing::ElementsAre("")); 232 EXPECT_THAT(test->alarm_delegate_->alarms_seen, testing::ElementsAre(""));
232 233
233 test->test_clock_->SetNow(base::Time::FromDoubleT(10.7)); 234 test->test_clock_->SetNow(base::Time::FromDoubleT(10.7));
234 base::MessageLoop::current()->Run(); 235 base::RunLoop().Run();
235 236
236 test->alarm_manager_->GetAlarm( 237 test->alarm_manager_->GetAlarm(
237 test->extension()->id(), std::string(), 238 test->extension()->id(), std::string(),
238 base::Bind( 239 base::Bind(
239 ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm3Callback, 240 ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm3Callback,
240 test)); 241 test));
241 } 242 }
242 243
243 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm1Callback( 244 void ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm1Callback(
244 ExtensionAlarmsTest* test, 245 ExtensionAlarmsTest* test,
245 Alarm* alarm) { 246 Alarm* alarm) {
246 ASSERT_TRUE(alarm); 247 ASSERT_TRUE(alarm);
247 EXPECT_EQ("", alarm->js_alarm->name); 248 EXPECT_EQ("", alarm->js_alarm->name);
248 EXPECT_DOUBLE_EQ(10001, alarm->js_alarm->scheduled_time); 249 EXPECT_DOUBLE_EQ(10001, alarm->js_alarm->scheduled_time);
249 EXPECT_THAT(alarm->js_alarm->period_in_minutes, 250 EXPECT_THAT(alarm->js_alarm->period_in_minutes,
250 testing::Pointee(testing::DoubleEq(0.001))); 251 testing::Pointee(testing::DoubleEq(0.001)));
251 252
252 test->test_clock_->SetNow(base::Time::FromDoubleT(10.1)); 253 test->test_clock_->SetNow(base::Time::FromDoubleT(10.1));
253 // Now wait for the alarm to fire. Our test delegate will quit the 254 // Now wait for the alarm to fire. Our test delegate will quit the
254 // MessageLoop when that happens. 255 // MessageLoop when that happens.
255 base::MessageLoop::current()->Run(); 256 base::RunLoop().Run();
256 257
257 test->alarm_manager_->GetAlarm( 258 test->alarm_manager_->GetAlarm(
258 test->extension()->id(), std::string(), 259 test->extension()->id(), std::string(),
259 base::Bind( 260 base::Bind(
260 ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm2Callback, 261 ExtensionAlarmsTestCreateRepeatingWithQuickFirstCallGetAlarm2Callback,
261 test)); 262 test));
262 } 263 }
263 264
264 TEST_F(ExtensionAlarmsTest, CreateRepeatingWithQuickFirstCall) { 265 TEST_F(ExtensionAlarmsTest, CreateRepeatingWithQuickFirstCall) {
265 test_clock_->SetNow(base::Time::FromDoubleT(9.99)); 266 test_clock_->SetNow(base::Time::FromDoubleT(9.99));
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
401 const AlarmManager::AlarmList* alarms) { 402 const AlarmManager::AlarmList* alarms) {
402 ASSERT_TRUE(alarms); 403 ASSERT_TRUE(alarms);
403 EXPECT_EQ(1u, alarms->size()); 404 EXPECT_EQ(1u, alarms->size());
404 EXPECT_THAT((*alarms)[0]->js_alarm->period_in_minutes, 405 EXPECT_THAT((*alarms)[0]->js_alarm->period_in_minutes,
405 testing::Pointee(0.001)); 406 testing::Pointee(0.001));
406 407
407 // Now wait for the alarms to fire, and ensure the cancelled alarms don't 408 // Now wait for the alarms to fire, and ensure the cancelled alarms don't
408 // fire. 409 // fire.
409 test->test_clock_->Advance(base::TimeDelta::FromMilliseconds(60)); 410 test->test_clock_->Advance(base::TimeDelta::FromMilliseconds(60));
410 RunScheduleNextPoll(test->alarm_manager_); 411 RunScheduleNextPoll(test->alarm_manager_);
411 base::MessageLoop::current()->Run(); 412 base::RunLoop().Run();
412 413
413 ASSERT_EQ(1u, test->alarm_delegate_->alarms_seen.size()); 414 ASSERT_EQ(1u, test->alarm_delegate_->alarms_seen.size());
414 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]); 415 EXPECT_EQ("", test->alarm_delegate_->alarms_seen[0]);
415 416
416 // Ensure the 0.001-minute alarm is still there, since it's repeating. 417 // Ensure the 0.001-minute alarm is still there, since it's repeating.
417 test->alarm_manager_->GetAllAlarms( 418 test->alarm_manager_->GetAllAlarms(
418 test->extension()->id(), 419 test->extension()->id(),
419 base::Bind(ExtensionAlarmsTestClearGetAllAlarms2Callback)); 420 base::Bind(ExtensionAlarmsTestClearGetAllAlarms2Callback));
420 } 421 }
421 422
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 VerifyScheduledTime("a"); 546 VerifyScheduledTime("a");
546 RemoveAllAlarms(); 547 RemoveAllAlarms();
547 } 548 }
548 { 549 {
549 test_clock_->SetNow(base::Time::FromDoubleT(3 * 60 + 1)); 550 test_clock_->SetNow(base::Time::FromDoubleT(3 * 60 + 1));
550 std::unique_ptr<Alarm> alarm(new Alarm); 551 std::unique_ptr<Alarm> alarm(new Alarm);
551 alarm->js_alarm->name = "bb"; 552 alarm->js_alarm->name = "bb";
552 alarm->js_alarm->scheduled_time = 3 * 60000; 553 alarm->js_alarm->scheduled_time = 3 * 60000;
553 alarm->js_alarm->period_in_minutes.reset(new double(3)); 554 alarm->js_alarm->period_in_minutes.reset(new double(3));
554 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm)); 555 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm));
555 base::MessageLoop::current()->Run(); 556 base::RunLoop().Run();
556 EXPECT_EQ( 557 EXPECT_EQ(
557 base::Time::FromJsTime(3 * 60000) + base::TimeDelta::FromMinutes(3), 558 base::Time::FromJsTime(3 * 60000) + base::TimeDelta::FromMinutes(3),
558 alarm_manager_->next_poll_time_); 559 alarm_manager_->next_poll_time_);
559 RemoveAllAlarms(); 560 RemoveAllAlarms();
560 } 561 }
561 { 562 {
562 test_clock_->SetNow(base::Time::FromDoubleT(4 * 60 + 1)); 563 test_clock_->SetNow(base::Time::FromDoubleT(4 * 60 + 1));
563 CreateAlarm("[\"a\", {\"periodInMinutes\": 2}]"); 564 CreateAlarm("[\"a\", {\"periodInMinutes\": 2}]");
564 RemoveAlarm("a"); 565 RemoveAlarm("a");
565 std::unique_ptr<Alarm> alarm2(new Alarm); 566 std::unique_ptr<Alarm> alarm2(new Alarm);
566 alarm2->js_alarm->name = "bb"; 567 alarm2->js_alarm->name = "bb";
567 alarm2->js_alarm->scheduled_time = 4 * 60000; 568 alarm2->js_alarm->scheduled_time = 4 * 60000;
568 alarm2->js_alarm->period_in_minutes.reset(new double(4)); 569 alarm2->js_alarm->period_in_minutes.reset(new double(4));
569 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm2)); 570 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm2));
570 std::unique_ptr<Alarm> alarm3(new Alarm); 571 std::unique_ptr<Alarm> alarm3(new Alarm);
571 alarm3->js_alarm->name = "ccc"; 572 alarm3->js_alarm->name = "ccc";
572 alarm3->js_alarm->scheduled_time = 25 * 60000; 573 alarm3->js_alarm->scheduled_time = 25 * 60000;
573 alarm3->js_alarm->period_in_minutes.reset(new double(25)); 574 alarm3->js_alarm->period_in_minutes.reset(new double(25));
574 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm3)); 575 alarm_manager_->AddAlarmImpl(extension()->id(), std::move(alarm3));
575 base::MessageLoop::current()->Run(); 576 base::RunLoop().Run();
576 EXPECT_EQ( 577 EXPECT_EQ(
577 base::Time::FromJsTime(4 * 60000) + base::TimeDelta::FromMinutes(4), 578 base::Time::FromJsTime(4 * 60000) + base::TimeDelta::FromMinutes(4),
578 alarm_manager_->next_poll_time_); 579 alarm_manager_->next_poll_time_);
579 RemoveAllAlarms(); 580 RemoveAllAlarms();
580 } 581 }
581 } 582 }
582 583
583 TEST_F(ExtensionAlarmsSchedulingTest, ReleasedExtensionPollsInfrequently) { 584 TEST_F(ExtensionAlarmsSchedulingTest, ReleasedExtensionPollsInfrequently) {
584 set_extension( 585 set_extension(
585 utils::CreateEmptyExtensionWithLocation(extensions::Manifest::INTERNAL)); 586 utils::CreateEmptyExtensionWithLocation(extensions::Manifest::INTERNAL));
(...skipping 13 matching lines...) Expand all
599 EXPECT_DOUBLE_EQ((alarm_manager_->last_poll_time_ + 600 EXPECT_DOUBLE_EQ((alarm_manager_->last_poll_time_ +
600 base::TimeDelta::FromMinutes(1)).ToJsTime(), 601 base::TimeDelta::FromMinutes(1)).ToJsTime(),
601 alarm_manager_->next_poll_time_.ToJsTime()); 602 alarm_manager_->next_poll_time_.ToJsTime());
602 } 603 }
603 604
604 TEST_F(ExtensionAlarmsSchedulingTest, TimerRunning) { 605 TEST_F(ExtensionAlarmsSchedulingTest, TimerRunning) {
605 EXPECT_FALSE(alarm_manager_->timer_.IsRunning()); 606 EXPECT_FALSE(alarm_manager_->timer_.IsRunning());
606 CreateAlarm("[\"a\", {\"delayInMinutes\": 0.001}]"); 607 CreateAlarm("[\"a\", {\"delayInMinutes\": 0.001}]");
607 EXPECT_TRUE(alarm_manager_->timer_.IsRunning()); 608 EXPECT_TRUE(alarm_manager_->timer_.IsRunning());
608 test_clock_->Advance(base::TimeDelta::FromMilliseconds(60)); 609 test_clock_->Advance(base::TimeDelta::FromMilliseconds(60));
609 base::MessageLoop::current()->Run(); 610 base::RunLoop().Run();
610 EXPECT_FALSE(alarm_manager_->timer_.IsRunning()); 611 EXPECT_FALSE(alarm_manager_->timer_.IsRunning());
611 CreateAlarm("[\"bb\", {\"delayInMinutes\": 10}]"); 612 CreateAlarm("[\"bb\", {\"delayInMinutes\": 10}]");
612 EXPECT_TRUE(alarm_manager_->timer_.IsRunning()); 613 EXPECT_TRUE(alarm_manager_->timer_.IsRunning());
613 RemoveAllAlarms(); 614 RemoveAllAlarms();
614 EXPECT_FALSE(alarm_manager_->timer_.IsRunning()); 615 EXPECT_FALSE(alarm_manager_->timer_.IsRunning());
615 } 616 }
616 617
617 TEST_F(ExtensionAlarmsSchedulingTest, MinimumGranularity) { 618 TEST_F(ExtensionAlarmsSchedulingTest, MinimumGranularity) {
618 set_extension( 619 set_extension(
619 utils::CreateEmptyExtensionWithLocation(extensions::Manifest::INTERNAL)); 620 utils::CreateEmptyExtensionWithLocation(extensions::Manifest::INTERNAL));
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
661 void FrequencyTestGetAlarmsCallback(ExtensionAlarmsTest* test, Alarm* alarm) { 662 void FrequencyTestGetAlarmsCallback(ExtensionAlarmsTest* test, Alarm* alarm) {
662 ASSERT_TRUE(alarm); 663 ASSERT_TRUE(alarm);
663 EXPECT_EQ("hello", alarm->js_alarm->name); 664 EXPECT_EQ("hello", alarm->js_alarm->name);
664 EXPECT_DOUBLE_EQ(10000, alarm->js_alarm->scheduled_time); 665 EXPECT_DOUBLE_EQ(10000, alarm->js_alarm->scheduled_time);
665 EXPECT_THAT(alarm->js_alarm->period_in_minutes, 666 EXPECT_THAT(alarm->js_alarm->period_in_minutes,
666 testing::Pointee(testing::DoubleEq(0.0001))); 667 testing::Pointee(testing::DoubleEq(0.0001)));
667 668
668 test->test_clock_->Advance(base::TimeDelta::FromMilliseconds(10)); 669 test->test_clock_->Advance(base::TimeDelta::FromMilliseconds(10));
669 // Now wait for the alarm to fire. Our test delegate will quit the 670 // Now wait for the alarm to fire. Our test delegate will quit the
670 // MessageLoop when that happens. 671 // MessageLoop when that happens.
671 base::MessageLoop::current()->Run(); 672 base::RunLoop().Run();
672 } 673 }
673 674
674 // Tests that alarms with very small period written to storage are also 675 // Tests that alarms with very small period written to storage are also
675 // subjected to minimum polling interval. 676 // subjected to minimum polling interval.
676 // Regression test for https://crbug.com/618540. 677 // Regression test for https://crbug.com/618540.
677 TEST_F(ExtensionAlarmsSchedulingTest, PollFrequencyFromStoredAlarm) { 678 TEST_F(ExtensionAlarmsSchedulingTest, PollFrequencyFromStoredAlarm) {
678 struct { 679 struct {
679 bool is_unpacked; 680 bool is_unpacked;
680 double delay_minimum; 681 double delay_minimum;
681 } test_data[] = { 682 } test_data[] = {
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
753 754
754 // The next poll should be the first poll that hasn't happened and is in-line 755 // The next poll should be the first poll that hasn't happened and is in-line
755 // with the original scheduling. 756 // with the original scheduling.
756 // Last poll was at 380 seconds; next poll should be at 480 seconds. 757 // Last poll was at 380 seconds; next poll should be at 480 seconds.
757 EXPECT_DOUBLE_EQ((alarm_manager_->last_poll_time_ + 758 EXPECT_DOUBLE_EQ((alarm_manager_->last_poll_time_ +
758 base::TimeDelta::FromSeconds(100)).ToJsTime(), 759 base::TimeDelta::FromSeconds(100)).ToJsTime(),
759 alarm_manager_->next_poll_time_.ToJsTime()); 760 alarm_manager_->next_poll_time_.ToJsTime());
760 } 761 }
761 762
762 } // namespace extensions 763 } // namespace extensions
OLDNEW
« no previous file with comments | « no previous file | extensions/browser/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698