#include "chrome/browser/sessions/session_types.h"
#include "chrome/browser/sessions/persistent_tab_restore_service.h"
#include "chrome/browser/sessions/tab_restore_service_factory.h"
-#include "chrome/browser/sync/glue/session_model_associator.h"
+#include "chrome/browser/sync/glue/local_device_info_provider_mock.h"
#include "chrome/browser/sync/glue/synced_session.h"
#include "chrome/browser/sync/profile_sync_service_mock.h"
-#include "chrome/browser/sync/sessions2/sessions_sync_manager.h"
+#include "chrome/browser/sync/sessions/sessions_sync_manager.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/test/base/menu_model_test.h"
#include "chrome/test/base/testing_profile.h"
#include "components/sessions/serialized_navigation_entry_test_helper.h"
-#include "grit/generated_resources.h"
+#include "content/public/browser/browser_thread.h"
#include "sync/api/fake_sync_change_processor.h"
#include "sync/api/sync_error_factory_mock.h"
#include "testing/gmock/include/gmock/gmock.h"
} // namespace
class RecentTabsSubMenuModelTest
- : public BrowserWithTestWindowTest,
- public browser_sync::SessionsSyncManager::SyncInternalApiDelegate {
+ : public BrowserWithTestWindowTest {
public:
- RecentTabsSubMenuModelTest()
- : sync_service_(&testing_profile_) {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableSyncSessionsV2)) {
- manager_.reset(new browser_sync::SessionsSyncManager(
- &testing_profile_,
- this,
- scoped_ptr<browser_sync::LocalSessionEventRouter>(
- new DummyRouter())));
- manager_->MergeDataAndStartSyncing(
- syncer::SESSIONS,
- syncer::SyncDataList(),
- scoped_ptr<syncer::SyncChangeProcessor>(
- new syncer::FakeSyncChangeProcessor),
- scoped_ptr<syncer::SyncErrorFactory>(
- new syncer::SyncErrorFactoryMock));
- } else {
- associator_.reset(new browser_sync::SessionModelAssociator(
- &sync_service_, true));
- associator_->SetCurrentMachineTagForTesting(
- GetLocalSyncCacheGUID());
- }
+ RecentTabsSubMenuModelTest()
+ : sync_service_(&testing_profile_),
+ local_device_(new browser_sync::LocalDeviceInfoProviderMock(
+ "RecentTabsSubMenuModelTest",
+ "Test Machine",
+ "Chromium 10k",
+ "Chrome 10k",
+ sync_pb::SyncEnums_DeviceType_TYPE_LINUX,
+ "device_id")) {
+ manager_.reset(new browser_sync::SessionsSyncManager(
+ &testing_profile_,
+ local_device_.get(),
+ scoped_ptr<browser_sync::LocalSessionEventRouter>(
+ new DummyRouter())));
+ manager_->MergeDataAndStartSyncing(
+ syncer::SESSIONS,
+ syncer::SyncDataList(),
+ scoped_ptr<syncer::SyncChangeProcessor>(
+ new syncer::FakeSyncChangeProcessor),
+ scoped_ptr<syncer::SyncErrorFactory>(
+ new syncer::SyncErrorFactoryMock));
}
void WaitForLoadFromLastSession() {
content::BrowserThread::GetBlockingPool()->FlushForTesting();
}
- static BrowserContextKeyedService* GetTabRestoreService(
+ static KeyedService* GetTabRestoreService(
content::BrowserContext* browser_context) {
// Ownership is tranfered to the profile.
return new PersistentTabRestoreService(
- Profile::FromBrowserContext(browser_context), NULL);;
+ Profile::FromBrowserContext(browser_context), NULL);
}
-
browser_sync::OpenTabsUIDelegate* GetOpenTabsDelegate() {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableSyncSessionsV2)) {
- return manager_.get();
- } else {
- return associator_.get();
- }
+ return manager_.get();
}
void RegisterRecentTabs(RecentTabsBuilderTestHelper* helper) {
- if (!CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableSyncSessionsV2)) {
- helper->ExportToSessionsSyncManager(manager_.get());
- } else {
- helper->ExportToSessionModelAssociator(associator_.get());
- }
- }
-
- virtual scoped_ptr<browser_sync::DeviceInfo> GetLocalDeviceInfo()
- const OVERRIDE {
- return scoped_ptr<browser_sync::DeviceInfo>(
- new browser_sync::DeviceInfo(GetLocalSyncCacheGUID(),
- "Test Machine",
- "Chromium 10k",
- "Chrome 10k",
- sync_pb::SyncEnums_DeviceType_TYPE_LINUX));
- }
-
- virtual std::string GetLocalSyncCacheGUID() const OVERRIDE {
- return "RecentTabsSubMenuModelTest";
+ helper->ExportToSessionsSyncManager(manager_.get());
}
private:
TestingProfile testing_profile_;
testing::NiceMock<ProfileSyncServiceMock> sync_service_;
- // TODO(tim): Remove associator_ when sessions V2 is the default, bug 98892.
- scoped_ptr<browser_sync::SessionModelAssociator> associator_;
scoped_ptr<browser_sync::SessionsSyncManager> manager_;
+ scoped_ptr<browser_sync::LocalDeviceInfoProviderMock> local_device_;
};
// Test disabled "Recently closed" header with no foreign tabs.