| 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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
| 6 #include "base/strings/string_split.h" | 6 #include "base/strings/string_split.h" |
| 7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
| 8 #include "net/base/mime_util.h" | 8 #include "net/base/mime_util.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 | 66 |
| 67 EXPECT_TRUE(IsSupportedImageMimeType("image/jpeg")); | 67 EXPECT_TRUE(IsSupportedImageMimeType("image/jpeg")); |
| 68 EXPECT_FALSE(IsSupportedImageMimeType("image/lolcat")); | 68 EXPECT_FALSE(IsSupportedImageMimeType("image/lolcat")); |
| 69 EXPECT_TRUE(IsSupportedNonImageMimeType("text/html")); | 69 EXPECT_TRUE(IsSupportedNonImageMimeType("text/html")); |
| 70 EXPECT_TRUE(IsSupportedNonImageMimeType("text/css")); | 70 EXPECT_TRUE(IsSupportedNonImageMimeType("text/css")); |
| 71 EXPECT_TRUE(IsSupportedNonImageMimeType("text/")); | 71 EXPECT_TRUE(IsSupportedNonImageMimeType("text/")); |
| 72 EXPECT_TRUE(IsSupportedNonImageMimeType("text/banana")); | 72 EXPECT_TRUE(IsSupportedNonImageMimeType("text/banana")); |
| 73 EXPECT_FALSE(IsSupportedNonImageMimeType("text/vcard")); | 73 EXPECT_FALSE(IsSupportedNonImageMimeType("text/vcard")); |
| 74 EXPECT_FALSE(IsSupportedNonImageMimeType("application/virus")); | 74 EXPECT_FALSE(IsSupportedNonImageMimeType("application/virus")); |
| 75 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-x509-user-cert")); | 75 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-x509-user-cert")); |
| 76 EXPECT_TRUE(IsSupportedNonImageMimeType("application/json")); |
| 77 EXPECT_TRUE(IsSupportedNonImageMimeType("application/+json")); |
| 78 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-suggestions+json")); |
| 79 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-s+json;x=2")); |
| 76 #if defined(OS_ANDROID) | 80 #if defined(OS_ANDROID) |
| 77 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-x509-ca-cert")); | 81 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-x509-ca-cert")); |
| 78 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-pkcs12")); | 82 EXPECT_TRUE(IsSupportedNonImageMimeType("application/x-pkcs12")); |
| 79 #endif | 83 #endif |
| 80 | 84 |
| 81 EXPECT_TRUE(IsSupportedMimeType("image/jpeg")); | 85 EXPECT_TRUE(IsSupportedMimeType("image/jpeg")); |
| 82 EXPECT_FALSE(IsSupportedMimeType("image/lolcat")); | 86 EXPECT_FALSE(IsSupportedMimeType("image/lolcat")); |
| 83 EXPECT_TRUE(IsSupportedMimeType("text/html")); | 87 EXPECT_TRUE(IsSupportedMimeType("text/html")); |
| 84 EXPECT_TRUE(IsSupportedMimeType("text/banana")); | 88 EXPECT_TRUE(IsSupportedMimeType("text/banana")); |
| 85 EXPECT_FALSE(IsSupportedMimeType("text/vcard")); | 89 EXPECT_FALSE(IsSupportedMimeType("text/vcard")); |
| 86 EXPECT_FALSE(IsSupportedMimeType("application/virus")); | 90 EXPECT_FALSE(IsSupportedMimeType("application/virus")); |
| 91 EXPECT_FALSE(IsSupportedMimeType("application/x-json")); |
| 92 EXPECT_FALSE(IsSupportedNonImageMimeType("application/vnd.doc;x=y+json")); |
| 87 } | 93 } |
| 88 | 94 |
| 89 TEST(MimeUtilTest, MatchesMimeType) { | 95 TEST(MimeUtilTest, MatchesMimeType) { |
| 90 EXPECT_TRUE(MatchesMimeType("*", "video/x-mpeg")); | 96 EXPECT_TRUE(MatchesMimeType("*", "video/x-mpeg")); |
| 91 EXPECT_TRUE(MatchesMimeType("video/*", "video/x-mpeg")); | 97 EXPECT_TRUE(MatchesMimeType("video/*", "video/x-mpeg")); |
| 92 EXPECT_TRUE(MatchesMimeType("video/*", "video/*")); | 98 EXPECT_TRUE(MatchesMimeType("video/*", "video/*")); |
| 93 EXPECT_TRUE(MatchesMimeType("video/x-mpeg", "video/x-mpeg")); | 99 EXPECT_TRUE(MatchesMimeType("video/x-mpeg", "video/x-mpeg")); |
| 94 EXPECT_TRUE(MatchesMimeType("application/*+xml", | 100 EXPECT_TRUE(MatchesMimeType("application/*+xml", |
| 95 "application/html+xml")); | 101 "application/html+xml")); |
| 96 EXPECT_TRUE(MatchesMimeType("application/*+xml", "application/+xml")); | 102 EXPECT_TRUE(MatchesMimeType("application/*+xml", "application/+xml")); |
| 103 EXPECT_TRUE(MatchesMimeType("application/*+json", |
| 104 "application/x-myformat+json")); |
| 97 EXPECT_TRUE(MatchesMimeType("aaa*aaa", "aaaaaa")); | 105 EXPECT_TRUE(MatchesMimeType("aaa*aaa", "aaaaaa")); |
| 98 EXPECT_TRUE(MatchesMimeType("*", std::string())); | 106 EXPECT_TRUE(MatchesMimeType("*", std::string())); |
| 99 EXPECT_FALSE(MatchesMimeType("video/", "video/x-mpeg")); | 107 EXPECT_FALSE(MatchesMimeType("video/", "video/x-mpeg")); |
| 100 EXPECT_FALSE(MatchesMimeType(std::string(), "video/x-mpeg")); | 108 EXPECT_FALSE(MatchesMimeType(std::string(), "video/x-mpeg")); |
| 101 EXPECT_FALSE(MatchesMimeType(std::string(), std::string())); | 109 EXPECT_FALSE(MatchesMimeType(std::string(), std::string())); |
| 102 EXPECT_FALSE(MatchesMimeType("video/x-mpeg", std::string())); | 110 EXPECT_FALSE(MatchesMimeType("video/x-mpeg", std::string())); |
| 103 EXPECT_FALSE(MatchesMimeType("application/*+xml", "application/xml")); | 111 EXPECT_FALSE(MatchesMimeType("application/*+xml", "application/xml")); |
| 104 EXPECT_FALSE(MatchesMimeType("application/*+xml", | 112 EXPECT_FALSE(MatchesMimeType("application/*+xml", |
| 105 "application/html+xmlz")); | 113 "application/html+xmlz")); |
| 106 EXPECT_FALSE(MatchesMimeType("application/*+xml", | 114 EXPECT_FALSE(MatchesMimeType("application/*+xml", |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 std::string nonAscii("application/nonutf8"); | 196 std::string nonAscii("application/nonutf8"); |
| 189 EXPECT_TRUE(IsMimeType(nonAscii)); | 197 EXPECT_TRUE(IsMimeType(nonAscii)); |
| 190 #if defined(OS_WIN) | 198 #if defined(OS_WIN) |
| 191 nonAscii.append(WideToUTF8(std::wstring(L"\u2603"))); | 199 nonAscii.append(WideToUTF8(std::wstring(L"\u2603"))); |
| 192 #else | 200 #else |
| 193 nonAscii.append("\u2603"); // unicode snowman | 201 nonAscii.append("\u2603"); // unicode snowman |
| 194 #endif | 202 #endif |
| 195 EXPECT_FALSE(IsMimeType(nonAscii)); | 203 EXPECT_FALSE(IsMimeType(nonAscii)); |
| 196 | 204 |
| 197 EXPECT_TRUE(IsMimeType("application/mime")); | 205 EXPECT_TRUE(IsMimeType("application/mime")); |
| 206 EXPECT_TRUE(IsMimeType("application/json")); |
| 207 EXPECT_TRUE(IsMimeType("application/x-suggestions+json")); |
| 208 EXPECT_TRUE(IsMimeType("application/+json")); |
| 198 EXPECT_TRUE(IsMimeType("audio/mime")); | 209 EXPECT_TRUE(IsMimeType("audio/mime")); |
| 199 EXPECT_TRUE(IsMimeType("example/mime")); | 210 EXPECT_TRUE(IsMimeType("example/mime")); |
| 200 EXPECT_TRUE(IsMimeType("image/mime")); | 211 EXPECT_TRUE(IsMimeType("image/mime")); |
| 201 EXPECT_TRUE(IsMimeType("message/mime")); | 212 EXPECT_TRUE(IsMimeType("message/mime")); |
| 202 EXPECT_TRUE(IsMimeType("model/mime")); | 213 EXPECT_TRUE(IsMimeType("model/mime")); |
| 203 EXPECT_TRUE(IsMimeType("multipart/mime")); | 214 EXPECT_TRUE(IsMimeType("multipart/mime")); |
| 204 EXPECT_TRUE(IsMimeType("text/mime")); | 215 EXPECT_TRUE(IsMimeType("text/mime")); |
| 205 EXPECT_TRUE(IsMimeType("TEXT/mime")); | 216 EXPECT_TRUE(IsMimeType("TEXT/mime")); |
| 206 EXPECT_TRUE(IsMimeType("Text/mime")); | 217 EXPECT_TRUE(IsMimeType("Text/mime")); |
| 207 EXPECT_TRUE(IsMimeType("TeXt/mime")); | 218 EXPECT_TRUE(IsMimeType("TeXt/mime")); |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 308 std::string post_data; | 319 std::string post_data; |
| 309 AddMultipartValueForUpload("value name", "value", "boundary", | 320 AddMultipartValueForUpload("value name", "value", "boundary", |
| 310 "content type", &post_data); | 321 "content type", &post_data); |
| 311 AddMultipartValueForUpload("value name", "value", "boundary", | 322 AddMultipartValueForUpload("value name", "value", "boundary", |
| 312 "", &post_data); | 323 "", &post_data); |
| 313 AddMultipartFinalDelimiterForUpload("boundary", &post_data); | 324 AddMultipartFinalDelimiterForUpload("boundary", &post_data); |
| 314 EXPECT_STREQ(ref_output, post_data.c_str()); | 325 EXPECT_STREQ(ref_output, post_data.c_str()); |
| 315 } | 326 } |
| 316 | 327 |
| 317 } // namespace net | 328 } // namespace net |
| OLD | NEW |