| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "chrome/common/cloud_print/cloud_print_helpers.h" | 5 #include "chrome/common/cloud_print/cloud_print_helpers.h" |
| 6 | 6 |
| 7 #include "base/md5.h" | 7 #include "base/md5.h" |
| 8 #include "base/strings/stringprintf.h" | 8 #include "base/strings/stringprintf.h" |
| 9 #include "base/sys_info.h" | 9 #include "base/sys_info.h" |
| 10 #include "chrome/common/chrome_version_info.h" | 10 #include "chrome/common/channel_info.h" |
| 11 #include "testing/gtest/include/gtest/gtest.h" | 11 #include "testing/gtest/include/gtest/gtest.h" |
| 12 #include "url/gurl.h" | 12 #include "url/gurl.h" |
| 13 | 13 |
| 14 namespace cloud_print { | 14 namespace cloud_print { |
| 15 | 15 |
| 16 namespace { | 16 namespace { |
| 17 | 17 |
| 18 void CheckURLs(const GURL& server_base_url) { | 18 void CheckURLs(const GURL& server_base_url) { |
| 19 std::string expected_url_base = server_base_url.spec(); | 19 std::string expected_url_base = server_base_url.spec(); |
| 20 if (expected_url_base[expected_url_base.length() - 1] != '/') | 20 if (expected_url_base[expected_url_base.length() - 1] != '/') |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 CheckURLs(GURL("https://www.google.com/cloudprint/")); | 76 CheckURLs(GURL("https://www.google.com/cloudprint/")); |
| 77 CheckURLs(GURL("http://www.myprinterserver.com")); | 77 CheckURLs(GURL("http://www.myprinterserver.com")); |
| 78 CheckURLs(GURL("http://www.myprinterserver.com/")); | 78 CheckURLs(GURL("http://www.myprinterserver.com/")); |
| 79 } | 79 } |
| 80 | 80 |
| 81 TEST(CloudPrintHelpersTest, GetHashOfPrinterTags) { | 81 TEST(CloudPrintHelpersTest, GetHashOfPrinterTags) { |
| 82 PrinterTags printer_tags; | 82 PrinterTags printer_tags; |
| 83 printer_tags["tag1"] = std::string("value1"); | 83 printer_tags["tag1"] = std::string("value1"); |
| 84 printer_tags["tag2"] = std::string("value2"); | 84 printer_tags["tag2"] = std::string("value2"); |
| 85 | 85 |
| 86 chrome::VersionInfo version_info; | |
| 87 std::string expected_list_string = base::StringPrintf( | 86 std::string expected_list_string = base::StringPrintf( |
| 88 "chrome_version%ssystem_name%ssystem_version%stag1value1tag2value2", | 87 "chrome_version%ssystem_name%ssystem_version%stag1value1tag2value2", |
| 89 version_info.CreateVersionString().c_str(), | 88 chrome::GetVersionString().c_str(), |
| 90 base::SysInfo::OperatingSystemName().c_str(), | 89 base::SysInfo::OperatingSystemName().c_str(), |
| 91 base::SysInfo::OperatingSystemVersion().c_str()); | 90 base::SysInfo::OperatingSystemVersion().c_str()); |
| 92 EXPECT_EQ(base::MD5String(expected_list_string), | 91 EXPECT_EQ(base::MD5String(expected_list_string), |
| 93 GetHashOfPrinterTags(printer_tags)); | 92 GetHashOfPrinterTags(printer_tags)); |
| 94 } | 93 } |
| 95 | 94 |
| 96 TEST(CloudPrintHelpersTest, GetPostDataForPrinterTags) { | 95 TEST(CloudPrintHelpersTest, GetPostDataForPrinterTags) { |
| 97 PrinterTags printer_tags; | 96 PrinterTags printer_tags; |
| 98 printer_tags["tag1"] = std::string("value1"); | 97 printer_tags["tag1"] = std::string("value1"); |
| 99 printer_tags["tag2"] = std::string("value2"); | 98 printer_tags["tag2"] = std::string("value2"); |
| 100 | 99 |
| 101 chrome::VersionInfo version_info; | |
| 102 std::string expected = base::StringPrintf( | 100 std::string expected = base::StringPrintf( |
| 103 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 101 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 104 "\r\n\r\n__test__chrome_version=%s\r\n" | 102 "\r\n\r\n__test__chrome_version=%s\r\n" |
| 105 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 103 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 106 "\r\n\r\n__test__system_name=%s\r\n" | 104 "\r\n\r\n__test__system_name=%s\r\n" |
| 107 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 105 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 108 "\r\n\r\n__test__system_version=%s\r\n" | 106 "\r\n\r\n__test__system_version=%s\r\n" |
| 109 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 107 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 110 "\r\n\r\n__test__tag1=value1\r\n" | 108 "\r\n\r\n__test__tag1=value1\r\n" |
| 111 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 109 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 112 "\r\n\r\n__test__tag2=value2\r\n" | 110 "\r\n\r\n__test__tag2=value2\r\n" |
| 113 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" | 111 "--test_mime_boundary\r\nContent-Disposition: form-data; name=\"tag\"" |
| 114 "\r\n\r\n__test__tagshash=%s\r\n", | 112 "\r\n\r\n__test__tagshash=%s\r\n", |
| 115 version_info.CreateVersionString().c_str(), | 113 chrome::GetVersionString().c_str(), |
| 116 base::SysInfo::OperatingSystemName().c_str(), | 114 base::SysInfo::OperatingSystemName().c_str(), |
| 117 base::SysInfo::OperatingSystemVersion().c_str(), | 115 base::SysInfo::OperatingSystemVersion().c_str(), |
| 118 GetHashOfPrinterTags(printer_tags).c_str()); | 116 GetHashOfPrinterTags(printer_tags).c_str()); |
| 119 | 117 |
| 120 EXPECT_EQ(expected, GetPostDataForPrinterTags( | 118 EXPECT_EQ(expected, GetPostDataForPrinterTags( |
| 121 printer_tags, | 119 printer_tags, |
| 122 std::string("test_mime_boundary"), | 120 std::string("test_mime_boundary"), |
| 123 std::string("__test__"), | 121 std::string("__test__"), |
| 124 std::string("__test__tagshash"))); | 122 std::string("__test__tagshash"))); |
| 125 } | 123 } |
| 126 | 124 |
| 127 TEST(CloudPrintHelpersTest, GetCloudPrintAuthHeader) { | 125 TEST(CloudPrintHelpersTest, GetCloudPrintAuthHeader) { |
| 128 std::string test_auth("testauth"); | 126 std::string test_auth("testauth"); |
| 129 EXPECT_EQ("Authorization: OAuth testauth", | 127 EXPECT_EQ("Authorization: OAuth testauth", |
| 130 GetCloudPrintAuthHeader(test_auth)); | 128 GetCloudPrintAuthHeader(test_auth)); |
| 131 } | 129 } |
| 132 | 130 |
| 133 } // namespace cloud_print | 131 } // namespace cloud_print |
| OLD | NEW |