Add new certificateProvider extension API.
[chromium-blink-merge.git] / chrome / browser / sync / test / integration / two_client_wifi_credentials_sync_test.cc
blob0d74a0ed195424371ca49d866e39c3a82c6eafda
1 // Copyright 2014 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/command_line.h"
6 #include "base/macros.h"
7 #include "chrome/browser/sync/test/integration/profile_sync_service_harness.h"
8 #include "chrome/browser/sync/test/integration/sync_test.h"
9 #include "chrome/browser/sync/test/integration/wifi_credentials_helper.h"
10 #include "chrome/common/chrome_switches.h"
11 #include "components/wifi_sync/wifi_credential.h"
12 #include "components/wifi_sync/wifi_security_class.h"
14 using wifi_sync::WifiCredential;
16 using WifiCredentialSet = wifi_sync::WifiCredential::CredentialSet;
18 class TwoClientWifiCredentialsSyncTest : public SyncTest {
19 public:
20 TwoClientWifiCredentialsSyncTest() : SyncTest(TWO_CLIENT) {}
21 ~TwoClientWifiCredentialsSyncTest() override {}
23 // SyncTest implementation.
24 void SetUp() override {
25 wifi_credentials_helper::SetUp();
26 SyncTest::SetUp();
29 void SetUpCommandLine(base::CommandLine* command_line) override {
30 SyncTest::SetUpCommandLine(command_line);
31 command_line->AppendSwitch(switches::kEnableWifiCredentialSync);
34 bool SetupClients() override {
35 if (!SyncTest::SetupClients())
36 return false;
37 wifi_credentials_helper::SetupClients();
38 return true;
41 private:
42 DISALLOW_COPY_AND_ASSIGN(TwoClientWifiCredentialsSyncTest);
45 IN_PROC_BROWSER_TEST_F(TwoClientWifiCredentialsSyncTest, NoCredentials) {
46 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
47 ASSERT_TRUE(wifi_credentials_helper::VerifierIsEmpty());
48 ASSERT_TRUE(wifi_credentials_helper::AllProfilesMatch());
51 IN_PROC_BROWSER_TEST_F(TwoClientWifiCredentialsSyncTest, SingleCredential) {
52 ASSERT_TRUE(SetupSync()) << "SetupSync() failed.";
54 const char ssid[] = "fake-ssid";
55 scoped_ptr<WifiCredential> credential =
56 wifi_credentials_helper::MakeWifiCredential(
57 ssid, wifi_sync::SECURITY_CLASS_PSK, "fake_passphrase");
58 ASSERT_TRUE(credential);
60 const size_t profile_a_index = 0;
61 wifi_credentials_helper::AddWifiCredential(
62 profile_a_index, "fake_id", *credential);
64 const WifiCredentialSet verifier_credentials =
65 wifi_credentials_helper::GetWifiCredentialsForProfile(verifier());
66 EXPECT_EQ(1U, verifier_credentials.size());
67 EXPECT_EQ(WifiCredential::MakeSsidBytesForTest(ssid),
68 verifier_credentials.begin()->ssid());
70 const size_t profile_b_index = 1;
71 ASSERT_TRUE(GetClient(profile_a_index)->AwaitMutualSyncCycleCompletion(
72 GetClient(profile_b_index)));
73 EXPECT_FALSE(wifi_credentials_helper::VerifierIsEmpty());
74 EXPECT_TRUE(wifi_credentials_helper::AllProfilesMatch());