OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <string> | 5 #include <string> |
6 | 6 |
| 7 #include "base/files/scoped_temp_dir.h" |
7 #include "base/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
8 #include "base/message_loop.h" | 9 #include "base/message_loop.h" |
9 #include "base/message_loop_proxy.h" | 10 #include "base/message_loop_proxy.h" |
10 #include "base/scoped_temp_dir.h" | |
11 #include "base/string_util.h" | 11 #include "base/string_util.h" |
12 #include "remoting/host/host_key_pair.h" | 12 #include "remoting/host/host_key_pair.h" |
13 #include "remoting/host/json_host_config.h" | 13 #include "remoting/host/json_host_config.h" |
14 #include "remoting/host/test_key_pair.h" | 14 #include "remoting/host/test_key_pair.h" |
15 #include "testing/gmock/include/gmock/gmock.h" | 15 #include "testing/gmock/include/gmock/gmock.h" |
16 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
17 | 17 |
18 namespace remoting { | 18 namespace remoting { |
19 | 19 |
20 namespace { | 20 namespace { |
(...skipping 10 matching lines...) Expand all Loading... |
31 | 31 |
32 class HostKeyPairTest : public testing::Test { | 32 class HostKeyPairTest : public testing::Test { |
33 protected: | 33 protected: |
34 virtual void SetUp() { | 34 virtual void SetUp() { |
35 ASSERT_TRUE(test_dir_.CreateUniqueTempDir()); | 35 ASSERT_TRUE(test_dir_.CreateUniqueTempDir()); |
36 FilePath config_path = test_dir_.path().AppendASCII("test_config.json"); | 36 FilePath config_path = test_dir_.path().AppendASCII("test_config.json"); |
37 config_.reset(new JsonHostConfig(config_path)); | 37 config_.reset(new JsonHostConfig(config_path)); |
38 } | 38 } |
39 | 39 |
40 MessageLoop message_loop_; | 40 MessageLoop message_loop_; |
41 ScopedTempDir test_dir_; | 41 base::ScopedTempDir test_dir_; |
42 scoped_ptr<JsonHostConfig> config_; | 42 scoped_ptr<JsonHostConfig> config_; |
43 }; | 43 }; |
44 | 44 |
45 TEST_F(HostKeyPairTest, SaveLoad) { | 45 TEST_F(HostKeyPairTest, SaveLoad) { |
46 // Save a key to a config, then load it back, and verify that we | 46 // Save a key to a config, then load it back, and verify that we |
47 // generate the same signature with both keys. | 47 // generate the same signature with both keys. |
48 HostKeyPair exported_key; | 48 HostKeyPair exported_key; |
49 exported_key.LoadFromString(kTestHostKeyPair); | 49 exported_key.LoadFromString(kTestHostKeyPair); |
50 exported_key.Save(config_.get()); | 50 exported_key.Save(config_.get()); |
51 | 51 |
52 message_loop_.RunUntilIdle(); | 52 message_loop_.RunUntilIdle(); |
53 | 53 |
54 HostKeyPair imported_key; | 54 HostKeyPair imported_key; |
55 imported_key.Load(*config_); | 55 imported_key.Load(*config_); |
56 | 56 |
57 ASSERT_EQ(exported_key.GetSignature(kTestMessage), | 57 ASSERT_EQ(exported_key.GetSignature(kTestMessage), |
58 imported_key.GetSignature(kTestMessage)); | 58 imported_key.GetSignature(kTestMessage)); |
59 } | 59 } |
60 | 60 |
61 TEST_F(HostKeyPairTest, Signatures) { | 61 TEST_F(HostKeyPairTest, Signatures) { |
62 // Sign a message and check that we get expected signature. | 62 // Sign a message and check that we get expected signature. |
63 HostKeyPair key_pair; | 63 HostKeyPair key_pair; |
64 key_pair.LoadFromString(kTestHostKeyPair); | 64 key_pair.LoadFromString(kTestHostKeyPair); |
65 | 65 |
66 std::string signature_base64 = key_pair.GetSignature(kTestMessage); | 66 std::string signature_base64 = key_pair.GetSignature(kTestMessage); |
67 ASSERT_EQ(signature_base64, std::string(kExpectedSignature)); | 67 ASSERT_EQ(signature_base64, std::string(kExpectedSignature)); |
68 } | 68 } |
69 | 69 |
70 } // namespace remoting | 70 } // namespace remoting |
OLD | NEW |