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.
5 #include "base/strings/stringprintf.h"
6 #include "base/strings/utf_string_conversions.h"
7 #include "chrome/browser/password_manager/password_form_data.h"
8 #include "chrome/browser/sync/test/integration/passwords_helper.h"
9 #include "chrome/browser/sync/test/integration/sync_test.h"
11 using passwords_helper::AddLogin
;
12 using passwords_helper::AllProfilesContainSamePasswordForms
;
13 using passwords_helper::CreateTestPasswordForm
;
14 using passwords_helper::GetPasswordCount
;
15 using passwords_helper::GetPasswordStore
;
17 using autofill::PasswordForm
;
19 class MultipleClientPasswordsSyncTest
: public SyncTest
{
21 MultipleClientPasswordsSyncTest() : SyncTest(MULTIPLE_CLIENT
) {}
22 virtual ~MultipleClientPasswordsSyncTest() {}
25 DISALLOW_COPY_AND_ASSIGN(MultipleClientPasswordsSyncTest
);
28 IN_PROC_BROWSER_TEST_F(MultipleClientPasswordsSyncTest
, Sanity
) {
29 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
31 for (int i
= 0; i
< num_clients(); ++i
) {
32 PasswordForm form
= CreateTestPasswordForm(i
);
33 AddLogin(GetPasswordStore(i
), form
);
35 ASSERT_TRUE(AwaitQuiescence());
37 ASSERT_EQ(num_clients(), GetPasswordCount(0));
38 ASSERT_TRUE(AllProfilesContainSamePasswordForms());