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

Unified Diff: update_check_scheduler_unittest.cc

Issue 3259011: AU: Start an UpdateAttempter unit test suite. (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/update_engine.git
Patch Set: Created 10 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « update_attempter_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: update_check_scheduler_unittest.cc
diff --git a/update_check_scheduler_unittest.cc b/update_check_scheduler_unittest.cc
index 8a0ca19e091cbb6573a303bb2c94430ea3e2a873..413453aa778cd68ea2a7708ec489dc7d62eb307e 100644
--- a/update_check_scheduler_unittest.cc
+++ b/update_check_scheduler_unittest.cc
@@ -37,21 +37,22 @@ class UpdateCheckSchedulerUnderTest : public UpdateCheckScheduler {
};
class UpdateCheckSchedulerTest : public ::testing::Test {
+ public:
+ UpdateCheckSchedulerTest() : scheduler_(&attempter_) {}
+
protected:
virtual void SetUp() {
test_ = this;
loop_ = NULL;
- scheduler_.reset(new UpdateCheckSchedulerUnderTest(&attempter_));
- EXPECT_EQ(&attempter_, scheduler_->update_attempter_);
- EXPECT_FALSE(scheduler_->enabled_);
- EXPECT_FALSE(scheduler_->scheduled_);
- EXPECT_EQ(0, scheduler_->last_interval_);
+ EXPECT_EQ(&attempter_, scheduler_.update_attempter_);
+ EXPECT_FALSE(scheduler_.enabled_);
+ EXPECT_FALSE(scheduler_.scheduled_);
+ EXPECT_EQ(0, scheduler_.last_interval_);
}
virtual void TearDown() {
test_ = NULL;
loop_ = NULL;
- scheduler_.reset(NULL);
}
static gboolean SourceCallback(gpointer data) {
@@ -60,7 +61,7 @@ class UpdateCheckSchedulerTest : public ::testing::Test {
return test_->source_callback_.Call(data);
}
- scoped_ptr<UpdateCheckSchedulerUnderTest> scheduler_;
+ UpdateCheckSchedulerUnderTest scheduler_;
UpdateAttempterMock attempter_;
MockFunction<gboolean(gpointer data)> source_callback_;
GMainLoop* loop_;
@@ -70,35 +71,35 @@ class UpdateCheckSchedulerTest : public ::testing::Test {
UpdateCheckSchedulerTest* UpdateCheckSchedulerTest::test_ = NULL;
TEST_F(UpdateCheckSchedulerTest, CanScheduleTest) {
- EXPECT_FALSE(scheduler_->CanSchedule());
- scheduler_->enabled_ = true;
- EXPECT_TRUE(scheduler_->CanSchedule());
- scheduler_->scheduled_ = true;
- EXPECT_FALSE(scheduler_->CanSchedule());
- scheduler_->enabled_ = false;
- EXPECT_FALSE(scheduler_->CanSchedule());
+ EXPECT_FALSE(scheduler_.CanSchedule());
+ scheduler_.enabled_ = true;
+ EXPECT_TRUE(scheduler_.CanSchedule());
+ scheduler_.scheduled_ = true;
+ EXPECT_FALSE(scheduler_.CanSchedule());
+ scheduler_.enabled_ = false;
+ EXPECT_FALSE(scheduler_.CanSchedule());
}
TEST_F(UpdateCheckSchedulerTest, ComputeNextIntervalAndFuzzBackoffTest) {
int interval, fuzz;
attempter_.set_http_response_code(500);
int last_interval = UpdateCheckScheduler::kTimeoutPeriodic + 50;
- scheduler_->last_interval_ = last_interval;
- scheduler_->ComputeNextIntervalAndFuzz(&interval, &fuzz);
+ scheduler_.last_interval_ = last_interval;
+ scheduler_.ComputeNextIntervalAndFuzz(&interval, &fuzz);
EXPECT_EQ(2 * last_interval, interval);
EXPECT_EQ(2 * last_interval, fuzz);
attempter_.set_http_response_code(503);
last_interval = UpdateCheckScheduler::kTimeoutMaxBackoff / 2 + 1;
- scheduler_->last_interval_ = last_interval;
- scheduler_->ComputeNextIntervalAndFuzz(&interval, &fuzz);
+ scheduler_.last_interval_ = last_interval;
+ scheduler_.ComputeNextIntervalAndFuzz(&interval, &fuzz);
EXPECT_EQ(UpdateCheckScheduler::kTimeoutMaxBackoff, interval);
EXPECT_EQ(UpdateCheckScheduler::kTimeoutMaxBackoff, fuzz);
}
TEST_F(UpdateCheckSchedulerTest, ComputeNextIntervalAndFuzzTest) {
int interval, fuzz;
- scheduler_->ComputeNextIntervalAndFuzz(&interval, &fuzz);
+ scheduler_.ComputeNextIntervalAndFuzz(&interval, &fuzz);
EXPECT_EQ(UpdateCheckScheduler::kTimeoutPeriodic, interval);
EXPECT_EQ(UpdateCheckScheduler::kTimeoutRegularFuzz, fuzz);
}
@@ -106,38 +107,38 @@ TEST_F(UpdateCheckSchedulerTest, ComputeNextIntervalAndFuzzTest) {
TEST_F(UpdateCheckSchedulerTest, GTimeoutAddSecondsTest) {
loop_ = g_main_loop_new(g_main_context_default(), FALSE);
// Invokes the actual GLib wrapper method rather than the subclass mock.
- scheduler_->UpdateCheckScheduler::GTimeoutAddSeconds(0, SourceCallback);
- EXPECT_CALL(source_callback_, Call(scheduler_.get())).Times(1);
+ scheduler_.UpdateCheckScheduler::GTimeoutAddSeconds(0, SourceCallback);
+ EXPECT_CALL(source_callback_, Call(&scheduler_)).Times(1);
g_main_loop_run(loop_);
g_main_loop_unref(loop_);
}
TEST_F(UpdateCheckSchedulerTest, IsBootDeviceRemovableTest) {
// Invokes the actual utils wrapper method rather than the subclass mock.
- EXPECT_FALSE(scheduler_->UpdateCheckScheduler::IsBootDeviceRemovable());
+ EXPECT_FALSE(scheduler_.UpdateCheckScheduler::IsBootDeviceRemovable());
}
TEST_F(UpdateCheckSchedulerTest, IsOfficialBuildTest) {
// Invokes the actual utils wrapper method rather than the subclass mock.
- EXPECT_TRUE(scheduler_->UpdateCheckScheduler::IsOfficialBuild());
+ EXPECT_TRUE(scheduler_.UpdateCheckScheduler::IsOfficialBuild());
}
TEST_F(UpdateCheckSchedulerTest, RunBootDeviceRemovableTest) {
- scheduler_->enabled_ = true;
- EXPECT_CALL(*scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(true));
- EXPECT_CALL(*scheduler_, IsBootDeviceRemovable())
+ scheduler_.enabled_ = true;
+ EXPECT_CALL(scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(true));
+ EXPECT_CALL(scheduler_, IsBootDeviceRemovable())
.Times(1)
.WillOnce(Return(true));
- scheduler_->Run();
- EXPECT_FALSE(scheduler_->enabled_);
+ scheduler_.Run();
+ EXPECT_FALSE(scheduler_.enabled_);
EXPECT_EQ(NULL, attempter_.update_check_scheduler());
}
TEST_F(UpdateCheckSchedulerTest, RunNonOfficialBuildTest) {
- scheduler_->enabled_ = true;
- EXPECT_CALL(*scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(false));
- scheduler_->Run();
- EXPECT_FALSE(scheduler_->enabled_);
+ scheduler_.enabled_ = true;
+ EXPECT_CALL(scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(false));
+ scheduler_.Run();
+ EXPECT_FALSE(scheduler_.enabled_);
EXPECT_EQ(NULL, attempter_.update_check_scheduler());
}
@@ -147,48 +148,48 @@ TEST_F(UpdateCheckSchedulerTest, RunTest) {
UpdateCheckScheduler::kTimeoutRegularFuzz,
&interval_min,
&interval_max);
- EXPECT_CALL(*scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(true));
- EXPECT_CALL(*scheduler_, IsBootDeviceRemovable())
+ EXPECT_CALL(scheduler_, IsOfficialBuild()).Times(1).WillOnce(Return(true));
+ EXPECT_CALL(scheduler_, IsBootDeviceRemovable())
.Times(1)
.WillOnce(Return(false));
- EXPECT_CALL(*scheduler_,
+ EXPECT_CALL(scheduler_,
GTimeoutAddSeconds(AllOf(Ge(interval_min), Le(interval_max)),
- scheduler_->StaticCheck)).Times(1);
- scheduler_->Run();
- EXPECT_TRUE(scheduler_->enabled_);
- EXPECT_EQ(scheduler_.get(), attempter_.update_check_scheduler());
+ scheduler_.StaticCheck)).Times(1);
+ scheduler_.Run();
+ EXPECT_TRUE(scheduler_.enabled_);
+ EXPECT_EQ(&scheduler_, attempter_.update_check_scheduler());
}
TEST_F(UpdateCheckSchedulerTest, ScheduleCheckDisabledTest) {
- EXPECT_CALL(*scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
- scheduler_->ScheduleCheck(250, 30);
- EXPECT_EQ(0, scheduler_->last_interval_);
- EXPECT_FALSE(scheduler_->scheduled_);
+ EXPECT_CALL(scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
+ scheduler_.ScheduleCheck(250, 30);
+ EXPECT_EQ(0, scheduler_.last_interval_);
+ EXPECT_FALSE(scheduler_.scheduled_);
}
TEST_F(UpdateCheckSchedulerTest, ScheduleCheckEnabledTest) {
int interval_min, interval_max;
FuzzRange(100, 10, &interval_min,&interval_max);
- EXPECT_CALL(*scheduler_,
+ EXPECT_CALL(scheduler_,
GTimeoutAddSeconds(AllOf(Ge(interval_min), Le(interval_max)),
- scheduler_->StaticCheck)).Times(1);
- scheduler_->enabled_ = true;
- scheduler_->ScheduleCheck(100, 10);
- EXPECT_EQ(100, scheduler_->last_interval_);
- EXPECT_TRUE(scheduler_->scheduled_);
+ scheduler_.StaticCheck)).Times(1);
+ scheduler_.enabled_ = true;
+ scheduler_.ScheduleCheck(100, 10);
+ EXPECT_EQ(100, scheduler_.last_interval_);
+ EXPECT_TRUE(scheduler_.scheduled_);
}
TEST_F(UpdateCheckSchedulerTest, ScheduleCheckNegativeIntervalTest) {
- EXPECT_CALL(*scheduler_, GTimeoutAddSeconds(0, scheduler_->StaticCheck))
+ EXPECT_CALL(scheduler_, GTimeoutAddSeconds(0, scheduler_.StaticCheck))
.Times(1);
- scheduler_->enabled_ = true;
- scheduler_->ScheduleCheck(-50, 20);
- EXPECT_TRUE(scheduler_->scheduled_);
+ scheduler_.enabled_ = true;
+ scheduler_.ScheduleCheck(-50, 20);
+ EXPECT_TRUE(scheduler_.scheduled_);
}
TEST_F(UpdateCheckSchedulerTest, ScheduleNextCheckDisabledTest) {
- EXPECT_CALL(*scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
- scheduler_->ScheduleNextCheck();
+ EXPECT_CALL(scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
+ scheduler_.ScheduleNextCheck();
}
TEST_F(UpdateCheckSchedulerTest, ScheduleNextCheckEnabledTest) {
@@ -197,16 +198,16 @@ TEST_F(UpdateCheckSchedulerTest, ScheduleNextCheckEnabledTest) {
UpdateCheckScheduler::kTimeoutRegularFuzz,
&interval_min,
&interval_max);
- EXPECT_CALL(*scheduler_,
+ EXPECT_CALL(scheduler_,
GTimeoutAddSeconds(AllOf(Ge(interval_min), Le(interval_max)),
- scheduler_->StaticCheck)).Times(1);
- scheduler_->enabled_ = true;
- scheduler_->ScheduleNextCheck();
+ scheduler_.StaticCheck)).Times(1);
+ scheduler_.enabled_ = true;
+ scheduler_.ScheduleNextCheck();
}
TEST_F(UpdateCheckSchedulerTest, SetUpdateStatusIdleDisabledTest) {
- EXPECT_CALL(*scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
- scheduler_->SetUpdateStatus(UPDATE_STATUS_IDLE);
+ EXPECT_CALL(scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
+ scheduler_.SetUpdateStatus(UPDATE_STATUS_IDLE);
}
TEST_F(UpdateCheckSchedulerTest, SetUpdateStatusIdleEnabledTest) {
@@ -215,24 +216,24 @@ TEST_F(UpdateCheckSchedulerTest, SetUpdateStatusIdleEnabledTest) {
UpdateCheckScheduler::kTimeoutRegularFuzz,
&interval_min,
&interval_max);
- EXPECT_CALL(*scheduler_,
+ EXPECT_CALL(scheduler_,
GTimeoutAddSeconds(AllOf(Ge(interval_min), Le(interval_max)),
- scheduler_->StaticCheck)).Times(1);
- scheduler_->enabled_ = true;
- scheduler_->SetUpdateStatus(UPDATE_STATUS_IDLE);
+ scheduler_.StaticCheck)).Times(1);
+ scheduler_.enabled_ = true;
+ scheduler_.SetUpdateStatus(UPDATE_STATUS_IDLE);
}
TEST_F(UpdateCheckSchedulerTest, SetUpdateStatusNonIdleTest) {
- EXPECT_CALL(*scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
- scheduler_->SetUpdateStatus(UPDATE_STATUS_DOWNLOADING);
- scheduler_->enabled_ = true;
- scheduler_->SetUpdateStatus(UPDATE_STATUS_DOWNLOADING);
+ EXPECT_CALL(scheduler_, GTimeoutAddSeconds(_, _)).Times(0);
+ scheduler_.SetUpdateStatus(UPDATE_STATUS_DOWNLOADING);
+ scheduler_.enabled_ = true;
+ scheduler_.SetUpdateStatus(UPDATE_STATUS_DOWNLOADING);
}
TEST_F(UpdateCheckSchedulerTest, StaticCheckTest) {
- scheduler_->scheduled_ = true;
+ scheduler_.scheduled_ = true;
EXPECT_CALL(attempter_, Update("", "")).Times(1);
- UpdateCheckSchedulerUnderTest::StaticCheck(scheduler_.get());
+ UpdateCheckSchedulerUnderTest::StaticCheck(&scheduler_);
}
} // namespace chromeos_update_engine
« no previous file with comments | « update_attempter_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698