15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch#include "chrome/browser/sync/profile_sync_service.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/sync/test/integration/passwords_helper.h" 7effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "chrome/browser/sync/test/integration/sync_integration_test_util.h" 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "chrome/browser/sync/test/integration/sync_test.h" 95d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "components/password_manager/core/browser/password_form_data.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::AddLogin; 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::CreateTestPasswordForm; 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::GetPasswordCount; 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::GetPasswordStore; 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::GetVerifierPasswordCount; 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::GetVerifierPasswordStore; 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using passwords_helper::ProfileContainsSamePasswordFormsAsVerifier; 18effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochusing sync_integration_test_util::AwaitCommitActivityCompletion; 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)using autofill::PasswordForm; 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class SingleClientPasswordsSyncTest : public SyncTest { 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SingleClientPasswordsSyncTest() : SyncTest(SINGLE_CLIENT) {} 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) virtual ~SingleClientPasswordsSyncTest() {} 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) private: 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(SingleClientPasswordsSyncTest); 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(SingleClientPasswordsSyncTest, Sanity) { 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) PasswordForm form = CreateTestPasswordForm(0); 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) AddLogin(GetVerifierPasswordStore(), form); 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_EQ(1, GetVerifierPasswordCount()); 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) AddLogin(GetPasswordStore(0), form); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_EQ(1, GetPasswordCount(0)); 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 40e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch ASSERT_TRUE(AwaitCommitActivityCompletion(GetSyncService((0)))); 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_TRUE(ProfileContainsSamePasswordFormsAsVerifier(0)); 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ASSERT_EQ(1, GetPasswordCount(0)); 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 44