1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "base/strings/stringprintf.h" 6 #include "base/values.h" 7 #include "chrome/browser/sync/test/integration/preferences_helper.h" 8 #include "chrome/browser/sync/test/integration/sync_test.h" 9 #include "chrome/common/pref_names.h" 10 11 using preferences_helper::ChangeListPref; 12 using preferences_helper::ListPrefMatches; 13 14 class MultipleClientPreferencesSyncTest : public SyncTest { 15 public: 16 MultipleClientPreferencesSyncTest() : SyncTest(MULTIPLE_CLIENT) {} 17 virtual ~MultipleClientPreferencesSyncTest() {} 18 19 private: 20 DISALLOW_COPY_AND_ASSIGN(MultipleClientPreferencesSyncTest); 21 }; 22 23 IN_PROC_BROWSER_TEST_F(MultipleClientPreferencesSyncTest, Sanity) { 24 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 25 DisableVerifier(); 26 27 for (int i = 0; i < num_clients(); ++i) { 28 ListValue urls; 29 urls.Append(Value::CreateStringValue( 30 base::StringPrintf("http://www.google.com/%d", i))); 31 ChangeListPref(i, prefs::kURLsToRestoreOnStartup, urls); 32 } 33 34 ASSERT_TRUE(AwaitQuiescence()); 35 ASSERT_TRUE(ListPrefMatches(prefs::kURLsToRestoreOnStartup)); 36 } 37