OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "components/sync_driver/system_encryptor.h" | 5 #include "components/sync_driver/system_encryptor.h" |
6 | 6 |
7 #include "components/encryptor/encryptor.h" | 7 #include "components/encryptor/os_crypt.h" |
8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 | 9 |
10 namespace browser_sync { | 10 namespace browser_sync { |
11 | 11 |
12 namespace { | 12 namespace { |
13 | 13 |
14 const char kPlaintext[] = "The Magic Words are Squeamish Ossifrage"; | 14 const char kPlaintext[] = "The Magic Words are Squeamish Ossifrage"; |
15 | 15 |
16 class SystemEncryptorTest : public testing::Test { | 16 class SystemEncryptorTest : public testing::Test { |
17 protected: | 17 protected: |
18 SystemEncryptor encryptor_; | 18 SystemEncryptor encryptor_; |
19 }; | 19 }; |
20 | 20 |
21 TEST_F(SystemEncryptorTest, EncryptDecrypt) { | 21 TEST_F(SystemEncryptorTest, EncryptDecrypt) { |
22 #if defined(OS_MACOSX) | 22 #if defined(OS_MACOSX) |
23 // SystemEncryptor ends up needing access to the keychain on OS X, | 23 // SystemEncryptor ends up needing access to the keychain on OS X, |
24 // so use the mock keychain to prevent prompts. | 24 // so use the mock keychain to prevent prompts. |
25 ::Encryptor::UseMockKeychain(true); | 25 ::OSCrypt::UseMockKeychain(true); |
26 #endif | 26 #endif |
27 std::string ciphertext; | 27 std::string ciphertext; |
28 EXPECT_TRUE(encryptor_.EncryptString(kPlaintext, &ciphertext)); | 28 EXPECT_TRUE(encryptor_.EncryptString(kPlaintext, &ciphertext)); |
29 EXPECT_NE(kPlaintext, ciphertext); | 29 EXPECT_NE(kPlaintext, ciphertext); |
30 std::string plaintext; | 30 std::string plaintext; |
31 EXPECT_TRUE(encryptor_.DecryptString(ciphertext, &plaintext)); | 31 EXPECT_TRUE(encryptor_.DecryptString(ciphertext, &plaintext)); |
32 EXPECT_EQ(kPlaintext, plaintext); | 32 EXPECT_EQ(kPlaintext, plaintext); |
33 } | 33 } |
34 | 34 |
35 } // namespace | 35 } // namespace |
36 | 36 |
37 } // namespace browser_sync | 37 } // namespace browser_sync |
OLD | NEW |