Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(598)

Side by Side Diff: net/quic/platform/api/quic_url_test.cc

Issue 2848203002: Add a platform implementation of QuicTest and QuicTestWithParam (Closed)
Patch Set: net/quic/platform/impl/quic_test_impl.cc Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/quic/platform/api/quic_text_utils_test.cc ('k') | net/quic/platform/impl/quic_test_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2017 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2017 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 "net/quic/platform/api/quic_url.h" 5 #include "net/quic/platform/api/quic_url.h"
6 6
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "net/quic/platform/api/quic_test.h"
8 8
9 using std::string; 9 using std::string;
10 10
11 namespace net { 11 namespace net {
12 namespace test { 12 namespace test {
13 namespace { 13 namespace {
14 14
15 TEST(QuicUrlTest, Basic) { 15 class QuicUrlTest : public QuicTest {};
16
17 TEST_F(QuicUrlTest, Basic) {
16 // No scheme specified. 18 // No scheme specified.
17 string url_str = "www.example.com"; 19 string url_str = "www.example.com";
18 QuicUrl url(url_str); 20 QuicUrl url(url_str);
19 EXPECT_FALSE(url.IsValid()); 21 EXPECT_FALSE(url.IsValid());
20 22
21 // scheme is HTTP. 23 // scheme is HTTP.
22 url_str = "http://www.example.com"; 24 url_str = "http://www.example.com";
23 url = QuicUrl(url_str); 25 url = QuicUrl(url_str);
24 EXPECT_TRUE(url.IsValid()); 26 EXPECT_TRUE(url.IsValid());
25 EXPECT_EQ("http://www.example.com/", url.ToString()); 27 EXPECT_EQ("http://www.example.com/", url.ToString());
(...skipping 17 matching lines...) Expand all
43 url_str = "ftp://www.example.com"; 45 url_str = "ftp://www.example.com";
44 url = QuicUrl(url_str); 46 url = QuicUrl(url_str);
45 EXPECT_TRUE(url.IsValid()); 47 EXPECT_TRUE(url.IsValid());
46 EXPECT_EQ("ftp://www.example.com/", url.ToString()); 48 EXPECT_EQ("ftp://www.example.com/", url.ToString());
47 EXPECT_EQ("ftp", url.scheme()); 49 EXPECT_EQ("ftp", url.scheme());
48 EXPECT_EQ("www.example.com", url.HostPort()); 50 EXPECT_EQ("www.example.com", url.HostPort());
49 EXPECT_EQ("/", url.PathParamsQuery()); 51 EXPECT_EQ("/", url.PathParamsQuery());
50 EXPECT_EQ(21u, url.port()); 52 EXPECT_EQ(21u, url.port());
51 } 53 }
52 54
53 TEST(QuicUrlTest, DefaultScheme) { 55 TEST_F(QuicUrlTest, DefaultScheme) {
54 // Default scheme to HTTP. 56 // Default scheme to HTTP.
55 string url_str = "www.example.com"; 57 string url_str = "www.example.com";
56 QuicUrl url(url_str, "http"); 58 QuicUrl url(url_str, "http");
57 EXPECT_EQ("http://www.example.com/", url.ToString()); 59 EXPECT_EQ("http://www.example.com/", url.ToString());
58 EXPECT_EQ("http", url.scheme()); 60 EXPECT_EQ("http", url.scheme());
59 61
60 // URL already has a scheme specified. 62 // URL already has a scheme specified.
61 url_str = "http://www.example.com"; 63 url_str = "http://www.example.com";
62 url = QuicUrl(url_str, "https"); 64 url = QuicUrl(url_str, "https");
63 EXPECT_EQ("http://www.example.com/", url.ToString()); 65 EXPECT_EQ("http://www.example.com/", url.ToString());
64 EXPECT_EQ("http", url.scheme()); 66 EXPECT_EQ("http", url.scheme());
65 67
66 // Default scheme to FTP. 68 // Default scheme to FTP.
67 url_str = "www.example.com"; 69 url_str = "www.example.com";
68 url = QuicUrl(url_str, "ftp"); 70 url = QuicUrl(url_str, "ftp");
69 EXPECT_EQ("ftp://www.example.com/", url.ToString()); 71 EXPECT_EQ("ftp://www.example.com/", url.ToString());
70 EXPECT_EQ("ftp", url.scheme()); 72 EXPECT_EQ("ftp", url.scheme());
71 } 73 }
72 74
73 TEST(QuicUrlTest, IsValid) { 75 TEST_F(QuicUrlTest, IsValid) {
74 string url_str = 76 string url_str =
75 "ftp://www.example.com:12345/path/to/resource?a=1&campaign=2"; 77 "ftp://www.example.com:12345/path/to/resource?a=1&campaign=2";
76 EXPECT_TRUE(QuicUrl(url_str).IsValid()); 78 EXPECT_TRUE(QuicUrl(url_str).IsValid());
77 79
78 // Invalid characters in host name. 80 // Invalid characters in host name.
79 url_str = "https://www%.example.com:12345/path/to/resource?a=1&campaign=2"; 81 url_str = "https://www%.example.com:12345/path/to/resource?a=1&campaign=2";
80 EXPECT_FALSE(QuicUrl(url_str).IsValid()); 82 EXPECT_FALSE(QuicUrl(url_str).IsValid());
81 83
82 // Invalid characters in scheme. 84 // Invalid characters in scheme.
83 url_str = "%http://www.example.com:12345/path/to/resource?a=1&campaign=2"; 85 url_str = "%http://www.example.com:12345/path/to/resource?a=1&campaign=2";
84 EXPECT_FALSE(QuicUrl(url_str).IsValid()); 86 EXPECT_FALSE(QuicUrl(url_str).IsValid());
85 87
86 // Host name too long. 88 // Host name too long.
87 string host(1024, 'a'); 89 string host(1024, 'a');
88 url_str = "https://" + host; 90 url_str = "https://" + host;
89 EXPECT_FALSE(QuicUrl(url_str).IsValid()); 91 EXPECT_FALSE(QuicUrl(url_str).IsValid());
90 92
91 // Invalid port number. 93 // Invalid port number.
92 url_str = "https://www..example.com:123456/path/to/resource?a=1&campaign=2"; 94 url_str = "https://www..example.com:123456/path/to/resource?a=1&campaign=2";
93 EXPECT_FALSE(QuicUrl(url_str).IsValid()); 95 EXPECT_FALSE(QuicUrl(url_str).IsValid());
94 } 96 }
95 97
96 TEST(QuicUrlTest, HostPort) { 98 TEST_F(QuicUrlTest, HostPort) {
97 string url_str = "http://www.example.com/"; 99 string url_str = "http://www.example.com/";
98 QuicUrl url(url_str); 100 QuicUrl url(url_str);
99 EXPECT_EQ("www.example.com", url.HostPort()); 101 EXPECT_EQ("www.example.com", url.HostPort());
100 EXPECT_EQ("www.example.com", url.host()); 102 EXPECT_EQ("www.example.com", url.host());
101 EXPECT_EQ(80u, url.port()); 103 EXPECT_EQ(80u, url.port());
102 104
103 url_str = "http://www.example.com:80/"; 105 url_str = "http://www.example.com:80/";
104 url = QuicUrl(url_str); 106 url = QuicUrl(url_str);
105 EXPECT_EQ("www.example.com", url.HostPort()); 107 EXPECT_EQ("www.example.com", url.HostPort());
106 EXPECT_EQ("www.example.com", url.host()); 108 EXPECT_EQ("www.example.com", url.host());
(...skipping 17 matching lines...) Expand all
124 EXPECT_EQ("2001::1", url.host()); 126 EXPECT_EQ("2001::1", url.host());
125 EXPECT_EQ(80u, url.port()); 127 EXPECT_EQ(80u, url.port());
126 128
127 url_str = "http://[2001::1]:81/"; 129 url_str = "http://[2001::1]:81/";
128 url = QuicUrl(url_str); 130 url = QuicUrl(url_str);
129 EXPECT_EQ("[2001::1]:81", url.HostPort()); 131 EXPECT_EQ("[2001::1]:81", url.HostPort());
130 EXPECT_EQ("2001::1", url.host()); 132 EXPECT_EQ("2001::1", url.host());
131 EXPECT_EQ(81u, url.port()); 133 EXPECT_EQ(81u, url.port());
132 } 134 }
133 135
134 TEST(QuicUrlTest, PathParamsQuery) { 136 TEST_F(QuicUrlTest, PathParamsQuery) {
135 string url_str = 137 string url_str =
136 "https://www.example.com:12345/path/to/resource?a=1&campaign=2"; 138 "https://www.example.com:12345/path/to/resource?a=1&campaign=2";
137 QuicUrl url(url_str); 139 QuicUrl url(url_str);
138 EXPECT_EQ("/path/to/resource?a=1&campaign=2", url.PathParamsQuery()); 140 EXPECT_EQ("/path/to/resource?a=1&campaign=2", url.PathParamsQuery());
139 EXPECT_EQ("/path/to/resource", url.path()); 141 EXPECT_EQ("/path/to/resource", url.path());
140 142
141 url_str = "https://www.example.com/?"; 143 url_str = "https://www.example.com/?";
142 url = QuicUrl(url_str); 144 url = QuicUrl(url_str);
143 EXPECT_EQ("/?", url.PathParamsQuery()); 145 EXPECT_EQ("/?", url.PathParamsQuery());
144 EXPECT_EQ("/", url.path()); 146 EXPECT_EQ("/", url.path());
145 147
146 url_str = "https://www.example.com/"; 148 url_str = "https://www.example.com/";
147 url = QuicUrl(url_str); 149 url = QuicUrl(url_str);
148 EXPECT_EQ("/", url.PathParamsQuery()); 150 EXPECT_EQ("/", url.PathParamsQuery());
149 EXPECT_EQ("/", url.path()); 151 EXPECT_EQ("/", url.path());
150 } 152 }
151 153
152 } // namespace 154 } // namespace
153 } // namespace test 155 } // namespace test
154 } // namespace net 156 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/platform/api/quic_text_utils_test.cc ('k') | net/quic/platform/impl/quic_test_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698