Index: google_apis/gcm/engine/gcm_store_impl_unittest.cc |
diff --git a/google_apis/gcm/engine/gcm_store_impl_unittest.cc b/google_apis/gcm/engine/gcm_store_impl_unittest.cc |
index 2fe64b429884d10021c03a35eafa246bb8694f6b..2b0c4018f39c0f7f0d2731bd785645b87abac818 100644 |
--- a/google_apis/gcm/engine/gcm_store_impl_unittest.cc |
+++ b/google_apis/gcm/engine/gcm_store_impl_unittest.cc |
@@ -47,6 +47,8 @@ class GCMStoreImplTest : public testing::Test { |
~GCMStoreImplTest() override; |
scoped_ptr<GCMStoreImpl> BuildGCMStore(); |
+ void LoadGCMStore( |
+ GCMStoreImpl* gcm_store, scoped_ptr<GCMStore::LoadResult>* result_dst); |
std::string GetNextPersistentId(); |
@@ -54,6 +56,8 @@ class GCMStoreImplTest : public testing::Test { |
void LoadCallback(scoped_ptr<GCMStore::LoadResult>* result_dst, |
scoped_ptr<GCMStore::LoadResult> result); |
+ void LoadWithoutCheckCallback(scoped_ptr<GCMStore::LoadResult>* result_dst, |
+ scoped_ptr<GCMStore::LoadResult> result); |
void UpdateCallback(bool success); |
protected: |
@@ -75,11 +79,24 @@ GCMStoreImplTest::~GCMStoreImplTest() {} |
scoped_ptr<GCMStoreImpl> GCMStoreImplTest::BuildGCMStore() { |
return scoped_ptr<GCMStoreImpl>(new GCMStoreImpl( |
- temp_directory_.path(), |
+ // Pass an non-existent directory as store path to match the exact |
+ // behavior in the production code. Currently GCMStoreImpl checks if |
+ // the directory exist or not to determine the store existence. |
+ temp_directory_.path().Append(FILE_PATH_LITERAL("GCM Store")), |
message_loop_.message_loop_proxy(), |
make_scoped_ptr<Encryptor>(new FakeEncryptor))); |
} |
+void GCMStoreImplTest::LoadGCMStore( |
+ GCMStoreImpl* gcm_store, scoped_ptr<GCMStore::LoadResult>* result_dst) { |
+ gcm_store->Load( |
+ GCMStore::CREATE_IF_MISSING, |
+ base::Bind(&GCMStoreImplTest::LoadCallback, |
+ base::Unretained(this), |
+ result_dst)); |
+ PumpLoop(); |
+} |
+ |
std::string GCMStoreImplTest::GetNextPersistentId() { |
return base::Uint64ToString(next_persistent_id_++); |
} |
@@ -90,6 +107,12 @@ void GCMStoreImplTest::LoadCallback( |
scoped_ptr<GCMStore::LoadResult>* result_dst, |
scoped_ptr<GCMStore::LoadResult> result) { |
ASSERT_TRUE(result->success); |
+ LoadWithoutCheckCallback(result_dst, result.Pass()); |
+} |
+ |
+void GCMStoreImplTest::LoadWithoutCheckCallback( |
+ scoped_ptr<GCMStore::LoadResult>* result_dst, |
+ scoped_ptr<GCMStore::LoadResult> result) { |
*result_dst = result.Pass(); |
run_loop_->Quit(); |
run_loop_.reset(new base::RunLoop()); |
@@ -101,11 +124,9 @@ void GCMStoreImplTest::UpdateCallback(bool success) { |
// Verify creating a new database and loading it. |
TEST_F(GCMStoreImplTest, LoadNew) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(0U, load_result->device_android_id); |
EXPECT_EQ(0U, load_result->device_security_token); |
@@ -115,13 +136,26 @@ TEST_F(GCMStoreImplTest, LoadNew) { |
EXPECT_EQ(base::Time::FromInternalValue(0LL), load_result->last_checkin_time); |
} |
-TEST_F(GCMStoreImplTest, DeviceCredentials) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+// Verify new database is not created when DO_NOT_CREATE_NEW_STORE is passed. |
+TEST_F(GCMStoreImplTest, LoadWithoutCreatingNewStore) { |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
+ gcm_store->Load( |
+ GCMStore::DO_NOT_CREATE, |
+ base::Bind(&GCMStoreImplTest::LoadWithoutCheckCallback, |
+ base::Unretained(this), |
+ &load_result)); |
PumpLoop(); |
+ EXPECT_FALSE(load_result->success); |
+ EXPECT_TRUE(load_result->store_does_not_exist); |
+} |
+ |
+TEST_F(GCMStoreImplTest, DeviceCredentials) { |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStore::LoadResult> load_result; |
+ LoadGCMStore(gcm_store.get(), &load_result); |
+ |
gcm_store->SetDeviceCredentials( |
kDeviceId, |
kDeviceToken, |
@@ -129,9 +163,7 @@ TEST_F(GCMStoreImplTest, DeviceCredentials) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(kDeviceId, load_result->device_android_id); |
ASSERT_EQ(kDeviceToken, load_result->device_security_token); |
@@ -140,9 +172,7 @@ TEST_F(GCMStoreImplTest, DeviceCredentials) { |
TEST_F(GCMStoreImplTest, LastCheckinInfo) { |
scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
base::Time last_checkin_time = base::Time::Now(); |
std::set<std::string> accounts; |
@@ -156,9 +186,7 @@ TEST_F(GCMStoreImplTest, LastCheckinInfo) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(last_checkin_time, load_result->last_checkin_time); |
ASSERT_EQ(accounts, load_result->last_checkin_accounts); |
@@ -170,18 +198,14 @@ TEST_F(GCMStoreImplTest, LastCheckinInfo) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(base::Time(), load_result->last_checkin_time); |
} |
TEST_F(GCMStoreImplTest, GServicesSettings_ProtocolV2) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::map<std::string, std::string> settings; |
settings["checkin_interval"] = "12345"; |
@@ -196,9 +220,7 @@ TEST_F(GCMStoreImplTest, GServicesSettings_ProtocolV2) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(settings, load_result->gservices_settings); |
ASSERT_EQ(digest, load_result->gservices_digest); |
@@ -216,20 +238,16 @@ TEST_F(GCMStoreImplTest, GServicesSettings_ProtocolV2) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(settings, load_result->gservices_settings); |
ASSERT_EQ(digest, load_result->gservices_digest); |
} |
TEST_F(GCMStoreImplTest, Registrations) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
// Add one registration with one sender. |
std::string registration = "sender1=registration1"; |
@@ -248,9 +266,7 @@ TEST_F(GCMStoreImplTest, Registrations) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(2u, load_result->registrations.size()); |
ASSERT_TRUE(load_result->registrations.find(kAppName) != |
@@ -266,9 +282,7 @@ TEST_F(GCMStoreImplTest, Registrations) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(1u, load_result->registrations.size()); |
ASSERT_TRUE(load_result->registrations.find(kAppName) != |
@@ -279,11 +293,9 @@ TEST_F(GCMStoreImplTest, Registrations) { |
// Verify saving some incoming messages, reopening the directory, and then |
// removing those incoming messages. |
TEST_F(GCMStoreImplTest, IncomingMessages) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::vector<std::string> persistent_ids; |
for (int i = 0; i < kNumPersistentIds; ++i) { |
@@ -295,9 +307,7 @@ TEST_F(GCMStoreImplTest, IncomingMessages) { |
} |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(persistent_ids, load_result->incoming_messages); |
ASSERT_TRUE(load_result->outgoing_messages.empty()); |
@@ -309,9 +319,7 @@ TEST_F(GCMStoreImplTest, IncomingMessages) { |
gcm_store = BuildGCMStore().Pass(); |
load_result->incoming_messages.clear(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_TRUE(load_result->incoming_messages.empty()); |
ASSERT_TRUE(load_result->outgoing_messages.empty()); |
@@ -320,11 +328,9 @@ TEST_F(GCMStoreImplTest, IncomingMessages) { |
// Verify saving some outgoing messages, reopening the directory, and then |
// removing those outgoing messages. |
TEST_F(GCMStoreImplTest, OutgoingMessages) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::vector<std::string> persistent_ids; |
const int kNumPersistentIds = 10; |
@@ -341,9 +347,7 @@ TEST_F(GCMStoreImplTest, OutgoingMessages) { |
} |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_TRUE(load_result->incoming_messages.empty()); |
ASSERT_EQ(load_result->outgoing_messages.size(), persistent_ids.size()); |
@@ -364,9 +368,7 @@ TEST_F(GCMStoreImplTest, OutgoingMessages) { |
gcm_store = BuildGCMStore().Pass(); |
load_result->outgoing_messages.clear(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_TRUE(load_result->incoming_messages.empty()); |
ASSERT_TRUE(load_result->outgoing_messages.empty()); |
@@ -374,11 +376,9 @@ TEST_F(GCMStoreImplTest, OutgoingMessages) { |
// Verify incoming and outgoing messages don't conflict. |
TEST_F(GCMStoreImplTest, IncomingAndOutgoingMessages) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::vector<std::string> persistent_ids; |
const int kNumPersistentIds = 10; |
@@ -400,9 +400,7 @@ TEST_F(GCMStoreImplTest, IncomingAndOutgoingMessages) { |
} |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(persistent_ids, load_result->incoming_messages); |
ASSERT_EQ(load_result->outgoing_messages.size(), persistent_ids.size()); |
@@ -428,9 +426,7 @@ TEST_F(GCMStoreImplTest, IncomingAndOutgoingMessages) { |
gcm_store = BuildGCMStore().Pass(); |
load_result->incoming_messages.clear(); |
load_result->outgoing_messages.clear(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_TRUE(load_result->incoming_messages.empty()); |
ASSERT_TRUE(load_result->outgoing_messages.empty()); |
@@ -439,11 +435,9 @@ TEST_F(GCMStoreImplTest, IncomingAndOutgoingMessages) { |
// Test that per-app message limits are enforced, persisted across restarts, |
// and updated as messages are removed. |
TEST_F(GCMStoreImplTest, PerAppMessageLimits) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind(&GCMStoreImplTest::LoadCallback, |
- base::Unretained(this), |
- &load_result)); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
// Add the initial (below app limit) messages. |
for (int i = 0; i < kNumMessagesPerApp; ++i) { |
@@ -473,10 +467,7 @@ TEST_F(GCMStoreImplTest, PerAppMessageLimits) { |
// Tear down and restore the database. |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind(&GCMStoreImplTest::LoadCallback, |
- base::Unretained(this), |
- &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
// Adding more messages should still fail. |
for (int i = 0; i < kNumMessagesPerApp; ++i) { |
@@ -515,10 +506,9 @@ TEST_F(GCMStoreImplTest, PerAppMessageLimits) { |
} |
TEST_F(GCMStoreImplTest, AccountMapping) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
// Add account mappings. |
AccountMapping account_mapping1; |
@@ -548,9 +538,7 @@ TEST_F(GCMStoreImplTest, AccountMapping) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(2UL, load_result->account_mappings.size()); |
GCMStore::AccountMappings::iterator iter = |
@@ -577,9 +565,7 @@ TEST_F(GCMStoreImplTest, AccountMapping) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(1UL, load_result->account_mappings.size()); |
iter = load_result->account_mappings.begin(); |
@@ -593,10 +579,9 @@ TEST_F(GCMStoreImplTest, AccountMapping) { |
} |
TEST_F(GCMStoreImplTest, HeartbeatInterval) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::string scope1 = "scope1"; |
std::string scope2 = "scope2"; |
@@ -615,9 +600,7 @@ TEST_F(GCMStoreImplTest, HeartbeatInterval) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(2UL, load_result->heartbeat_intervals.size()); |
ASSERT_TRUE(load_result->heartbeat_intervals.find(scope1) != |
@@ -633,9 +616,7 @@ TEST_F(GCMStoreImplTest, HeartbeatInterval) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(1UL, load_result->heartbeat_intervals.size()); |
ASSERT_TRUE(load_result->heartbeat_intervals.find(scope1) != |
@@ -647,12 +628,9 @@ TEST_F(GCMStoreImplTest, HeartbeatInterval) { |
// same time, they per-app message counts should not go up, as failures should |
// result in decrementing the counts. |
TEST_F(GCMStoreImplTest, AddMessageAfterDestroy) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind(&GCMStoreImplTest::LoadCallback, |
- base::Unretained(this), |
- &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
gcm_store->Destroy(base::Bind(&GCMStoreImplTest::UpdateCallback, |
base::Unretained(this))); |
PumpLoop(); |
@@ -673,28 +651,20 @@ TEST_F(GCMStoreImplTest, AddMessageAfterDestroy) { |
} |
TEST_F(GCMStoreImplTest, ReloadAfterClose) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind(&GCMStoreImplTest::LoadCallback, |
- base::Unretained(this), |
- &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
gcm_store->Close(); |
PumpLoop(); |
- gcm_store->Load(base::Bind(&GCMStoreImplTest::LoadCallback, |
- base::Unretained(this), |
- &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
} |
TEST_F(GCMStoreImplTest, LastTokenFetchTime) { |
scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(base::Time(), load_result->last_token_fetch_time); |
base::Time last_token_fetch_time = base::Time::Now(); |
@@ -704,9 +674,7 @@ TEST_F(GCMStoreImplTest, LastTokenFetchTime) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(last_token_fetch_time, load_result->last_token_fetch_time); |
// Negative cases, where the value read is gibberish. |
@@ -717,18 +685,14 @@ TEST_F(GCMStoreImplTest, LastTokenFetchTime) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
EXPECT_EQ(base::Time(), load_result->last_token_fetch_time); |
} |
TEST_F(GCMStoreImplTest, InstanceIDData) { |
- scoped_ptr<GCMStore> gcm_store(BuildGCMStore()); |
+ scoped_ptr<GCMStoreImpl> gcm_store(BuildGCMStore()); |
scoped_ptr<GCMStore::LoadResult> load_result; |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
std::string instance_id_data("Foo"); |
gcm_store->AddInstanceIDData( |
@@ -745,9 +709,7 @@ TEST_F(GCMStoreImplTest, InstanceIDData) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(2u, load_result->instance_id_data.size()); |
ASSERT_TRUE(load_result->instance_id_data.find(kAppName) != |
@@ -763,9 +725,7 @@ TEST_F(GCMStoreImplTest, InstanceIDData) { |
PumpLoop(); |
gcm_store = BuildGCMStore().Pass(); |
- gcm_store->Load(base::Bind( |
- &GCMStoreImplTest::LoadCallback, base::Unretained(this), &load_result)); |
- PumpLoop(); |
+ LoadGCMStore(gcm_store.get(), &load_result); |
ASSERT_EQ(1u, load_result->instance_id_data.size()); |
ASSERT_TRUE(load_result->instance_id_data.find(kAppName2) != |