Chromium Code Reviews| Index: components/cronet/ios/test/cronet_bidirectional_stream_test.mm |
| diff --git a/components/cronet/ios/test/cronet_bidirectional_stream_test.mm b/components/cronet/ios/test/cronet_bidirectional_stream_test.mm |
| index 6ff093ad519b06f3416e27f5de414c7cf1843e47..775d022795620d4c591a132207fda03da82e0bc5 100644 |
| --- a/components/cronet/ios/test/cronet_bidirectional_stream_test.mm |
| +++ b/components/cronet/ios/test/cronet_bidirectional_stream_test.mm |
| @@ -25,9 +25,6 @@ |
| #include "url/gurl.h" |
| namespace { |
| -const char kTestServerHost[] = "test.example.com"; |
| -const int kTestServerPort = 6121; |
| -const char kTestServerUrl[] = "https://test.example.com:6121"; |
| cronet_bidirectional_stream_header kTestHeaders[] = { |
| {"header1", "foo"}, |
| @@ -37,6 +34,8 @@ const cronet_bidirectional_stream_header_array kTestHeadersArray = { |
| 2, 2, kTestHeaders}; |
| } // namespace |
| +namespace cronet { |
| + |
| class CronetBidirectionalStreamTest : public ::testing::Test { |
| protected: |
| CronetBidirectionalStreamTest() {} |
| @@ -49,11 +48,11 @@ class CronetBidirectionalStreamTest : public ::testing::Test { |
| // Hack to work around issues with SetUp being called multiple times |
| // during the test, and QuicTestServer not shutting down / restarting |
| // gracefully. |
| - cronet::CronetEnvironment::Initialize(); |
| - cronet::StartQuicTestServer(); |
| + CronetEnvironment::Initialize(); |
| + StartQuicTestServer(); |
| } |
| - cronet_environment_ = new cronet::CronetEnvironment("CronetTest/1.0.0.0"); |
| + cronet_environment_ = new CronetEnvironment("CronetTest/1.0.0.0"); |
| cronet_environment_->set_http2_enabled(true); |
| cronet_environment_->set_quic_enabled(true); |
| cronet_environment_->set_ssl_key_log_file_name("SSLKEYLOGFILE"); |
| @@ -66,7 +65,7 @@ class CronetBidirectionalStreamTest : public ::testing::Test { |
| cronet_environment_->set_host_resolver_rules( |
| "MAP test.example.com 127.0.0.1," |
| "MAP notfound.example.com ~NOTFOUND"); |
| - cronet_environment_->AddQuicHint(kTestServerHost, kTestServerPort, |
| + cronet_environment_->AddQuicHint(kTestServerDomain, kTestServerPort, |
| kTestServerPort); |
| cronet_environment_->Start(); |
| @@ -77,7 +76,7 @@ class CronetBidirectionalStreamTest : public ::testing::Test { |
| } |
| void TearDown() override { |
| - // cronet::ShutdownQuicTestServer(); |
| + // ShutdownQuicTestServer(); |
| cronet_environment_->StopNetLog(); |
| //[CronetEngine stopNetLog]; |
| //[CronetEngine uninstall]; |
| @@ -86,11 +85,11 @@ class CronetBidirectionalStreamTest : public ::testing::Test { |
| cronet_engine* engine() { return &cronet_engine_; } |
| private: |
| - static cronet::CronetEnvironment* cronet_environment_; |
| + static CronetEnvironment* cronet_environment_; |
| static cronet_engine cronet_engine_; |
| }; |
| -cronet::CronetEnvironment* CronetBidirectionalStreamTest::cronet_environment_; |
| +CronetEnvironment* CronetBidirectionalStreamTest::cronet_environment_; |
| cronet_engine CronetBidirectionalStreamTest::cronet_engine_; |
| class TestBidirectionalStreamCallback { |
| @@ -230,6 +229,11 @@ class TestBidirectionalStreamCallback { |
| cronet_bidirectional_stream* stream, |
| const cronet_bidirectional_stream_header_array* trailers) { |
| TestBidirectionalStreamCallback* test = FromStream(stream); |
| + for (size_t i = 0; i < trailers->count; ++i) { |
| + test->response_trailers[trailers->headers[i].key] = |
|
kapishnikov
2016/04/26 20:11:50
Is it possible for the response to contain two or
mef
2016/04/26 20:39:21
I just confirmed that I've recalled correctly and
|
| + trailers->headers[i].value; |
| + } |
| + |
| if (test->MaybeCancel(stream, ON_TRAILERS)) |
| return; |
| } |
| @@ -279,11 +283,14 @@ TEST_F(CronetBidirectionalStreamTest, StartExampleBidiStream) { |
| cronet_bidirectional_stream_start(test.stream, kTestServerUrl, 0, "POST", |
| &kTestHeadersArray, false); |
| test.BlockForDone(); |
| - ASSERT_EQ(std::string("404"), test.response_headers[":status"]); |
| + ASSERT_EQ(std::string(kHelloStatus), test.response_headers[kStatusHeader]); |
| + ASSERT_EQ(std::string(kHelloHeaderValue), |
| + test.response_headers[kHelloHeaderName]); |
| ASSERT_EQ(TestBidirectionalStreamCallback::ON_SUCCEEDED, test.response_step); |
| - ASSERT_EQ(std::string("fi"), test.read_data.front()); |
| - ASSERT_EQ(std::string("file not found"), |
| - base::JoinString(test.read_data, "")); |
| + ASSERT_EQ(std::string(kHelloBodyValue, 2), test.read_data.front()); |
| + ASSERT_EQ(std::string(kHelloBodyValue), base::JoinString(test.read_data, "")); |
| + ASSERT_EQ(std::string(kHelloTrailerValue), |
| + test.response_trailers[kHelloTrailerName]); |
| cronet_bidirectional_stream_destroy(test.stream); |
| } |
| @@ -296,8 +303,8 @@ TEST_F(CronetBidirectionalStreamTest, CancelOnRead) { |
| cronet_bidirectional_stream_start(test.stream, kTestServerUrl, 0, "POST", |
| &kTestHeadersArray, true); |
| test.BlockForDone(); |
| - ASSERT_EQ(std::string("404"), test.response_headers[":status"]); |
| - ASSERT_EQ(std::string("file not found"), test.read_data.front()); |
| + ASSERT_EQ(std::string(kHelloStatus), test.response_headers[kStatusHeader]); |
| + ASSERT_EQ(std::string(kHelloBodyValue), test.read_data.front()); |
| ASSERT_EQ(TestBidirectionalStreamCallback::ON_CANCELED, test.response_step); |
| cronet_bidirectional_stream_destroy(test.stream); |
| } |
| @@ -311,7 +318,7 @@ TEST_F(CronetBidirectionalStreamTest, CancelOnResponse) { |
| cronet_bidirectional_stream_start(test.stream, kTestServerUrl, 0, "POST", |
| &kTestHeadersArray, true); |
| test.BlockForDone(); |
| - ASSERT_EQ(std::string("404"), test.response_headers[":status"]); |
| + ASSERT_EQ(std::string(kHelloStatus), test.response_headers[kStatusHeader]); |
| ASSERT_TRUE(test.read_data.empty()); |
| ASSERT_EQ(TestBidirectionalStreamCallback::ON_CANCELED, test.response_step); |
| cronet_bidirectional_stream_destroy(test.stream); |
| @@ -326,8 +333,8 @@ TEST_F(CronetBidirectionalStreamTest, CancelOnSucceeded) { |
| cronet_bidirectional_stream_start(test.stream, kTestServerUrl, 0, "POST", |
| &kTestHeadersArray, true); |
| test.BlockForDone(); |
| - ASSERT_EQ(std::string("404"), test.response_headers[":status"]); |
| - ASSERT_EQ(std::string("file not found"), test.read_data.front()); |
| + ASSERT_EQ(std::string(kHelloStatus), test.response_headers[kStatusHeader]); |
| + ASSERT_EQ(std::string(kHelloBodyValue), test.read_data.front()); |
| ASSERT_EQ(TestBidirectionalStreamCallback::ON_SUCCEEDED, test.response_step); |
| cronet_bidirectional_stream_destroy(test.stream); |
| } |
| @@ -374,3 +381,5 @@ TEST_F(CronetBidirectionalStreamTest, FailedResolution) { |
| ASSERT_EQ(net::ERR_NAME_NOT_RESOLVED, test.net_error); |
| cronet_bidirectional_stream_destroy(test.stream); |
| } |
| + |
| +} // namespace cronet |