summaryrefslogtreecommitdiffstats
path: root/net/spdy
diff options
context:
space:
mode:
authorttuttle@chromium.org <ttuttle@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-14 19:32:23 +0000
committerttuttle@chromium.org <ttuttle@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-14 19:32:23 +0000
commit4bd4622de60f9185a208daf1647f8de3707c2394 (patch)
treefc85e8fb4918bf226d052bd940ecc0da2581435b /net/spdy
parentda88174593252e06e02324ed61da082b0babdd6d (diff)
downloadchromium_src-4bd4622de60f9185a208daf1647f8de3707c2394.zip
chromium_src-4bd4622de60f9185a208daf1647f8de3707c2394.tar.gz
chromium_src-4bd4622de60f9185a208daf1647f8de3707c2394.tar.bz2
Merge ConstructSpdyControlFrame into SpdyTestUtil.
BUG=226192 Review URL: https://chromiumcodereview.appspot.com/14975006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200045 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy')
-rw-r--r--net/spdy/spdy_network_transaction_spdy2_unittest.cc374
-rw-r--r--net/spdy/spdy_network_transaction_spdy3_unittest.cc374
-rw-r--r--net/spdy/spdy_proxy_client_socket_spdy2_unittest.cc76
-rw-r--r--net/spdy/spdy_proxy_client_socket_spdy3_unittest.cc76
-rw-r--r--net/spdy/spdy_test_util_common.cc34
-rw-r--r--net/spdy/spdy_test_util_common.h12
-rw-r--r--net/spdy/spdy_test_util_spdy2.cc102
-rw-r--r--net/spdy/spdy_test_util_spdy2.h21
-rw-r--r--net/spdy/spdy_test_util_spdy3.cc156
-rw-r--r--net/spdy/spdy_test_util_spdy3.h39
-rw-r--r--net/spdy/spdy_websocket_test_util_spdy2.cc61
-rw-r--r--net/spdy/spdy_websocket_test_util_spdy3.cc60
12 files changed, 687 insertions, 698 deletions
diff --git a/net/spdy/spdy_network_transaction_spdy2_unittest.cc b/net/spdy/spdy_network_transaction_spdy2_unittest.cc
index ec57eac..144b63e 100644
--- a/net/spdy/spdy_network_transaction_spdy2_unittest.cc
+++ b/net/spdy/spdy_network_transaction_spdy2_unittest.cc
@@ -2466,28 +2466,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, UpperCaseHeadersInHeadersFrame) {
static const char* const kLateHeaders[] = {
"X-UpperCase", "yes",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
CreateMockRead(*stream1_reply),
@@ -5009,28 +5009,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, ServerPushWithHeaders) {
"version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5090,28 +5090,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, ServerPushClaimBeforeHeaders) {
"version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5229,39 +5229,39 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, ServerPushWithTwoHeaderFrames) {
"version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers1(ConstructSpdyControlFrame(kMiddleHeaders,
- arraysize(kMiddleHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream2_headers2(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers1(
+ spdy_util_.ConstructSpdyControlFrame(kMiddleHeaders,
+ arraysize(kMiddleHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream2_headers2(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5382,28 +5382,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, ServerPushWithNoStatusHeaderFrames) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers1(ConstructSpdyControlFrame(kMiddleHeaders,
- arraysize(kMiddleHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers1(
+ spdy_util_.ConstructSpdyControlFrame(kMiddleHeaders,
+ arraysize(kMiddleHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5496,28 +5496,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, SynReplyWithHeaders) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
CreateMockRead(*stream1_reply),
@@ -5551,28 +5551,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, SynReplyWithLateHeaders) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, false));
scoped_ptr<SpdyFrame> stream1_body2(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
@@ -5608,28 +5608,28 @@ TEST_P(SpdyNetworkTransactionSpdy2Test, SynReplyWithDuplicateLateHeaders) {
"status",
"500 Server Error",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, false));
scoped_ptr<SpdyFrame> stream1_body2(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
diff --git a/net/spdy/spdy_network_transaction_spdy3_unittest.cc b/net/spdy/spdy_network_transaction_spdy3_unittest.cc
index 08b8411..0d7d732 100644
--- a/net/spdy/spdy_network_transaction_spdy3_unittest.cc
+++ b/net/spdy/spdy_network_transaction_spdy3_unittest.cc
@@ -3049,28 +3049,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, UpperCaseHeadersInHeadersFrame) {
static const char* const kLateHeaders[] = {
"X-UpperCase", "yes",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
CreateMockRead(*stream1_reply),
@@ -5596,28 +5596,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, ServerPushWithHeaders) {
":version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5678,28 +5678,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, ServerPushClaimBeforeHeaders) {
":version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5818,39 +5818,39 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, ServerPushWithTwoHeaderFrames) {
":version",
"HTTP/1.1"
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers1(ConstructSpdyControlFrame(kMiddleHeaders,
- arraysize(kMiddleHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream2_headers2(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers1(
+ spdy_util_.ConstructSpdyControlFrame(kMiddleHeaders,
+ arraysize(kMiddleHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream2_headers2(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -5975,28 +5975,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, ServerPushWithNoStatusHeaderFrames) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream2_syn(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 2,
- LOWEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 1));
- scoped_ptr<SpdyFrame>
- stream2_headers1(ConstructSpdyControlFrame(kMiddleHeaders,
- arraysize(kMiddleHeaders) / 2,
- false,
- 2,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream2_syn(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 1));
+ scoped_ptr<SpdyFrame> stream2_headers1(
+ spdy_util_.ConstructSpdyControlFrame(kMiddleHeaders,
+ arraysize(kMiddleHeaders) / 2,
+ false,
+ 2,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame>
stream1_reply(ConstructSpdyGetSynReply(NULL, 0, 1));
@@ -6089,28 +6089,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, SynReplyWithHeaders) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
CreateMockRead(*stream1_reply),
@@ -6144,28 +6144,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, SynReplyWithLateHeaders) {
"hello",
"bye",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, false));
scoped_ptr<SpdyFrame> stream1_body2(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
@@ -6201,28 +6201,28 @@ TEST_P(SpdyNetworkTransactionSpdy3Test, SynReplyWithDuplicateLateHeaders) {
":status",
"500 Server Error",
};
- scoped_ptr<SpdyFrame>
- stream1_reply(ConstructSpdyControlFrame(kInitialHeaders,
- arraysize(kInitialHeaders) / 2,
- false,
- 1,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
- scoped_ptr<SpdyFrame>
- stream1_headers(ConstructSpdyControlFrame(kLateHeaders,
- arraysize(kLateHeaders) / 2,
- false,
- 1,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- NULL,
- 0,
- 0));
+ scoped_ptr<SpdyFrame> stream1_reply(
+ spdy_util_.ConstructSpdyControlFrame(kInitialHeaders,
+ arraysize(kInitialHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
+ scoped_ptr<SpdyFrame> stream1_headers(
+ spdy_util_.ConstructSpdyControlFrame(kLateHeaders,
+ arraysize(kLateHeaders) / 2,
+ false,
+ 1,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ NULL,
+ 0,
+ 0));
scoped_ptr<SpdyFrame> stream1_body(ConstructSpdyBodyFrame(1, false));
scoped_ptr<SpdyFrame> stream1_body2(ConstructSpdyBodyFrame(1, true));
MockRead reads[] = {
diff --git a/net/spdy/spdy_proxy_client_socket_spdy2_unittest.cc b/net/spdy/spdy_proxy_client_socket_spdy2_unittest.cc
index 509838a..58055d7 100644
--- a/net/spdy/spdy_proxy_client_socket_spdy2_unittest.cc
+++ b/net/spdy/spdy_proxy_client_socket_spdy2_unittest.cc
@@ -379,15 +379,16 @@ SpdyFrame* SpdyProxyClientSocketSpdy2Test::ConstructConnectReplyFrame() {
"status", "200 Connection Established",
"version", "HTTP/1.1"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a standard SPDY SYN_REPLY frame to match the SPDY CONNECT.
@@ -399,15 +400,16 @@ SpdyProxyClientSocketSpdy2Test::ConstructConnectAuthReplyFrame() {
"proxy-authenticate", "Basic realm=\"MyRealm1\"",
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a SPDY SYN_REPLY frame with an HTTP 302 redirect.
@@ -420,15 +422,16 @@ SpdyProxyClientSocketSpdy2Test::ConstructConnectRedirectReplyFrame() {
"set-cookie", "foo=bar"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a SPDY SYN_REPLY frame with an HTTP 500 error.
@@ -439,15 +442,16 @@ SpdyProxyClientSocketSpdy2Test::ConstructConnectErrorReplyFrame() {
"version", "HTTP/1.1",
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
SpdyFrame* SpdyProxyClientSocketSpdy2Test::ConstructBodyFrame(
diff --git a/net/spdy/spdy_proxy_client_socket_spdy3_unittest.cc b/net/spdy/spdy_proxy_client_socket_spdy3_unittest.cc
index 0ce54b7..749cb90 100644
--- a/net/spdy/spdy_proxy_client_socket_spdy3_unittest.cc
+++ b/net/spdy/spdy_proxy_client_socket_spdy3_unittest.cc
@@ -379,15 +379,16 @@ SpdyFrame* SpdyProxyClientSocketSpdy3Test::ConstructConnectReplyFrame() {
":status", "200 Connection Established",
":version", "HTTP/1.1"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a standard SPDY SYN_REPLY frame to match the SPDY CONNECT.
@@ -399,15 +400,16 @@ SpdyProxyClientSocketSpdy3Test::ConstructConnectAuthReplyFrame() {
"proxy-authenticate", "Basic realm=\"MyRealm1\"",
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a SPDY SYN_REPLY frame with an HTTP 302 redirect.
@@ -420,15 +422,16 @@ SpdyProxyClientSocketSpdy3Test::ConstructConnectRedirectReplyFrame() {
"set-cookie", "foo=bar"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
// Constructs a SPDY SYN_REPLY frame with an HTTP 500 error.
@@ -439,15 +442,16 @@ SpdyProxyClientSocketSpdy3Test::ConstructConnectErrorReplyFrame() {
":version", "HTTP/1.1",
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- kStreamId,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardReplyHeaders,
- arraysize(kStandardReplyHeaders));
+ return spdy_util_.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ kStreamId,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardReplyHeaders,
+ arraysize(kStandardReplyHeaders),
+ 0);
}
SpdyFrame* SpdyProxyClientSocketSpdy3Test::ConstructBodyFrame(
diff --git a/net/spdy/spdy_test_util_common.cc b/net/spdy/spdy_test_util_common.cc
index 047f264..6fb06dc 100644
--- a/net/spdy/spdy_test_util_common.cc
+++ b/net/spdy/spdy_test_util_common.cc
@@ -15,6 +15,7 @@
#include "net/http/http_server_properties_impl.h"
#include "net/socket/socket_test_util.h"
#include "net/spdy/buffered_spdy_framer.h"
+#include "net/spdy/spdy_http_utils.h"
#include "net/spdy/spdy_session.h"
#include "net/spdy/spdy_stream.h"
@@ -631,4 +632,37 @@ SpdyFrame* SpdyTestUtil::ConstructSpdyFrame(const SpdyHeaderInfo& header_info,
return ConstructSpdyFrame(header_info, headers.Pass());
}
+SpdyFrame* SpdyTestUtil::ConstructSpdyControlFrame(
+ const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ SpdyStreamId stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize,
+ SpdyStreamId associated_stream_id) const {
+ EXPECT_GE(type, FIRST_CONTROL_TYPE);
+ EXPECT_LE(type, LAST_CONTROL_TYPE);
+ const SpdyHeaderInfo kSynStartHeader = {
+ type,
+ stream_id,
+ associated_stream_id,
+ ConvertRequestPriorityToSpdyPriority(request_priority, spdy_version_),
+ 0, // credential slot
+ flags,
+ compressed,
+ RST_STREAM_INVALID, // status
+ NULL, // data
+ 0, // length
+ DATA_FLAG_NONE
+ };
+ scoped_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock());
+ AppendToHeaderBlock(extra_headers, extra_header_count, headers.get());
+ if (kHeaders && kHeadersSize)
+ AppendToHeaderBlock(kHeaders, kHeadersSize / 2, headers.get());
+ return ConstructSpdyFrame(kSynStartHeader, headers.Pass());
+}
+
} // namespace net
diff --git a/net/spdy/spdy_test_util_common.h b/net/spdy/spdy_test_util_common.h
index 1af36c8..3ef4e2e 100644
--- a/net/spdy/spdy_test_util_common.h
+++ b/net/spdy/spdy_test_util_common.h
@@ -298,6 +298,18 @@ class SpdyTestUtil {
const char* const tail_headers[],
int tail_header_count) const;
+ SpdyFrame* ConstructSpdyControlFrame(
+ const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ SpdyStreamId stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize,
+ SpdyStreamId associated_stream_id) const;
+
private:
const NextProto protocol_;
const int spdy_version_;
diff --git a/net/spdy/spdy_test_util_spdy2.cc b/net/spdy/spdy_test_util_spdy2.cc
index a8c1588..a70f304 100644
--- a/net/spdy/spdy_test_util_spdy2.cc
+++ b/net/spdy/spdy_test_util_spdy2.cc
@@ -74,6 +74,52 @@ SpdyFrame* ConstructSpdyFrame(const SpdyHeaderInfo& header_info,
tail_header_count);
}
+// Construct a generic SpdyControlFrame.
+SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ int stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize) {
+ SpdyTestUtil util(kProtoSPDY2);
+ return util.ConstructSpdyControlFrame(extra_headers,
+ extra_header_count,
+ compressed,
+ stream_id,
+ request_priority,
+ type,
+ flags,
+ kHeaders,
+ kHeadersSize,
+ 0);
+}
+
+SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ SpdyStreamId stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize,
+ SpdyStreamId associated_stream_id) {
+ SpdyTestUtil util(kProtoSPDY2);
+ return util.ConstructSpdyControlFrame(extra_headers,
+ extra_header_count,
+ compressed,
+ stream_id,
+ request_priority,
+ type,
+ flags,
+ kHeaders,
+ kHeadersSize,
+ associated_stream_id);
+}
+
} // namespace
SpdyFrame* ConstructSpdySettings(const SettingsMap& settings) {
@@ -148,62 +194,6 @@ int ConstructSpdyHeader(const char* const extra_headers[],
return n;
}
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- int stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize) {
- EXPECT_GE(type, FIRST_CONTROL_TYPE);
- EXPECT_LE(type, LAST_CONTROL_TYPE);
- return ConstructSpdyControlFrame(extra_headers,
- extra_header_count,
- compressed,
- stream_id,
- request_priority,
- type,
- flags,
- kHeaders,
- kHeadersSize,
- 0);
-}
-
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id) {
- EXPECT_GE(type, FIRST_CONTROL_TYPE);
- EXPECT_LE(type, LAST_CONTROL_TYPE);
- const SpdyHeaderInfo kSynStartHeader = {
- type, // Kind = Syn
- stream_id, // Stream ID
- associated_stream_id, // Associated stream ID
- ConvertRequestPriorityToSpdyPriority(request_priority, 2),
- // Priority
- kSpdyCredentialSlotUnused,
- flags, // Control Flags
- compressed, // Compressed
- RST_STREAM_INVALID, // Status
- NULL, // Data
- 0, // Length
- DATA_FLAG_NONE // Data Flags
- };
- return ConstructSpdyFrame(kSynStartHeader,
- extra_headers,
- extra_header_count,
- kHeaders,
- kHeadersSize / 2);
-}
-
SpdyFrame* ConstructSpdyGet(const char* const url,
bool compressed,
SpdyStreamId stream_id,
diff --git a/net/spdy/spdy_test_util_spdy2.h b/net/spdy/spdy_test_util_spdy2.h
index ebd1e51..7c68825 100644
--- a/net/spdy/spdy_test_util_spdy2.h
+++ b/net/spdy/spdy_test_util_spdy2.h
@@ -24,27 +24,6 @@ namespace test_spdy2 {
// Can't find a function you're looking for? ttuttle is migrating functions
// from here into methods in the SpdyTestUtil class in spdy_test_common.h.
-// Construct a generic SpdyControlFrame.
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- int stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize);
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id);
-
// Construct an expected SPDY reply string.
// |extra_headers| are the extra header-value pairs, which typically
// will vary the most between calls.
diff --git a/net/spdy/spdy_test_util_spdy3.cc b/net/spdy/spdy_test_util_spdy3.cc
index 3ea8c19..7937c2c 100644
--- a/net/spdy/spdy_test_util_spdy3.cc
+++ b/net/spdy/spdy_test_util_spdy3.cc
@@ -65,6 +65,80 @@ SpdyFrame* ConstructSpdyFrame(const SpdyHeaderInfo& header_info,
return util.ConstructSpdyFrame(header_info, headers.Pass());
}
+// Construct a SPDY control frame. |spdy_version| must be
+// kSpdyVersion3 or kSpdyVersion4.
+SpdyFrame* ConstructSpdyControlFrameWithVersion(
+ int spdy_version,
+ const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ SpdyStreamId stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize,
+ SpdyStreamId associated_stream_id) {
+ SpdyTestUtil util(NextProtoFromSpdyVersion(spdy_version));
+ return util.ConstructSpdyControlFrame(extra_headers,
+ extra_header_count,
+ compressed,
+ stream_id,
+ request_priority,
+ type,
+ flags,
+ kHeaders,
+ kHeadersSize,
+ associated_stream_id);
+}
+
+// Construct a generic SPDY control frame with an associated stream ID.
+SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ SpdyStreamId stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize,
+ SpdyStreamId associated_stream_id) {
+ SpdyTestUtil util(kProtoSPDY3);
+ return util.ConstructSpdyControlFrame(extra_headers,
+ extra_header_count,
+ compressed,
+ stream_id,
+ request_priority,
+ type,
+ flags,
+ kHeaders,
+ kHeadersSize,
+ associated_stream_id);
+}
+
+// Construct a generic SPDY control frame.
+SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
+ int extra_header_count,
+ bool compressed,
+ int stream_id,
+ RequestPriority request_priority,
+ SpdyFrameType type,
+ SpdyControlFlags flags,
+ const char* const* kHeaders,
+ int kHeadersSize) {
+ SpdyTestUtil util(kProtoSPDY3);
+ return util.ConstructSpdyControlFrame(extra_headers,
+ extra_header_count,
+ compressed,
+ stream_id,
+ request_priority,
+ type,
+ flags,
+ kHeaders,
+ kHeadersSize,
+ 0);
+}
+
} // namespace
SpdyFrame* ConstructSpdySettings(const SettingsMap& settings) {
@@ -139,88 +213,6 @@ int ConstructSpdyHeader(const char* const extra_headers[],
return n;
}
-SpdyFrame* ConstructSpdyControlFrameWithVersion(
- int spdy_version,
- const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id) {
- EXPECT_GE(type, FIRST_CONTROL_TYPE);
- EXPECT_LE(type, LAST_CONTROL_TYPE);
- const SpdyHeaderInfo kSynStartHeader = {
- type, // Kind = Syn
- stream_id, // Stream ID
- associated_stream_id, // Associated stream ID
- ConvertRequestPriorityToSpdyPriority(request_priority, 3),
- // Priority
- 0, // Credential Slot
- flags, // Control Flags
- compressed, // Compressed
- RST_STREAM_INVALID, // Status
- NULL, // Data
- 0, // Length
- DATA_FLAG_NONE // Data Flags
- };
- scoped_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock());
- AppendToHeaderBlock(extra_headers, extra_header_count, headers.get());
- if (kHeaders && kHeadersSize)
- AppendToHeaderBlock(kHeaders, kHeadersSize / 2, headers.get());
- return ConstructSpdyFrameWithVersion(
- spdy_version, kSynStartHeader, headers.Pass());
-}
-
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- int stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize) {
- EXPECT_GE(type, FIRST_CONTROL_TYPE);
- EXPECT_LE(type, LAST_CONTROL_TYPE);
- return ConstructSpdyControlFrame(extra_headers,
- extra_header_count,
- compressed,
- stream_id,
- request_priority,
- type,
- flags,
- kHeaders,
- kHeadersSize,
- 0);
-}
-
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id) {
- return ConstructSpdyControlFrameWithVersion(kSpdyVersion3,
- extra_headers,
- extra_header_count,
- compressed,
- stream_id,
- request_priority,
- type,
- flags,
- kHeaders,
- kHeadersSize,
- associated_stream_id);
-}
-
SpdyFrame* ConstructSpdyGet(const char* const url,
bool compressed,
SpdyStreamId stream_id,
diff --git a/net/spdy/spdy_test_util_spdy3.h b/net/spdy/spdy_test_util_spdy3.h
index cd166b8..eabd26b 100644
--- a/net/spdy/spdy_test_util_spdy3.h
+++ b/net/spdy/spdy_test_util_spdy3.h
@@ -28,45 +28,6 @@ namespace test_spdy3 {
// Can't find a function you're looking for? ttuttle is migrating functions
// from here into methods in the SpdyTestUtil class in spdy_test_common.h.
-// Construct a SPDY control frame. |spdy_version| must be
-// kSpdyVersion3 or kSpdyVersion4.
-//
-// TODO(akalin): Move this to a common area once
-// ConstructSpdyFrameWithVersion() is also moved.
-SpdyFrame* ConstructSpdyControlFrameWithVersion(
- int spdy_version,
- const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id);
-
-// Construct a generic SPDY control frame.
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- int stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize);
-SpdyFrame* ConstructSpdyControlFrame(const char* const extra_headers[],
- int extra_header_count,
- bool compressed,
- SpdyStreamId stream_id,
- RequestPriority request_priority,
- SpdyFrameType type,
- SpdyControlFlags flags,
- const char* const* kHeaders,
- int kHeadersSize,
- SpdyStreamId associated_stream_id);
-
// Construct an expected SPDY reply string.
// |extra_headers| are the extra header-value pairs, which typically
// will vary the most between calls.
diff --git a/net/spdy/spdy_websocket_test_util_spdy2.cc b/net/spdy/spdy_websocket_test_util_spdy2.cc
index 0738ef8..454d211 100644
--- a/net/spdy/spdy_websocket_test_util_spdy2.cc
+++ b/net/spdy/spdy_websocket_test_util_spdy2.cc
@@ -23,6 +23,8 @@ SpdyFrame* ConstructSpdyWebSocketSynStream(int stream_id,
const char* path,
const char* host,
const char* origin) {
+ SpdyTestUtil util(kProtoSPDY2);
+
const char* const kWebSocketHeaders[] = {
"path",
path,
@@ -35,31 +37,34 @@ SpdyFrame* ConstructSpdyWebSocketSynStream(int stream_id,
"origin",
origin
};
- return ConstructSpdyControlFrame(/*extra_headers*/ NULL,
- /*extra_header_count*/ 0,
- /*compressed*/ false,
- stream_id,
- HIGHEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- kWebSocketHeaders,
- arraysize(kWebSocketHeaders));
+ return util.ConstructSpdyControlFrame(/*extra_headers*/ NULL,
+ /*extra_header_count*/ 0,
+ /*compressed*/ false,
+ stream_id,
+ HIGHEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ kWebSocketHeaders,
+ arraysize(kWebSocketHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketSynReply(int stream_id) {
+ SpdyTestUtil util(kProtoSPDY2);
static const char* const kStandardWebSocketHeaders[] = {
"status",
"101"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- stream_id,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardWebSocketHeaders,
- arraysize(kStandardWebSocketHeaders));
+ return util.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ stream_id,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardWebSocketHeaders,
+ arraysize(kStandardWebSocketHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketHandshakeRequestFrame(
@@ -127,6 +132,7 @@ SpdyFrame* ConstructSpdyWebSocketHandshakeResponseFrame(
SpdyFrame* ConstructSpdyWebSocketHeadersFrame(int stream_id,
const char* length,
bool fin) {
+ SpdyTestUtil util(kProtoSPDY2);
static const char* const kHeaders[] = {
"opcode",
"1", // text frame
@@ -135,15 +141,16 @@ SpdyFrame* ConstructSpdyWebSocketHeadersFrame(int stream_id,
"fin",
fin ? "1" : "0"
};
- return ConstructSpdyControlFrame(/*extra_headers*/ NULL,
- /*extra_header_count*/ 0,
- /*compression*/ false,
- stream_id,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- kHeaders,
- arraysize(kHeaders));
+ return util.ConstructSpdyControlFrame(/*extra_headers*/ NULL,
+ /*extra_header_count*/ 0,
+ /*compression*/ false,
+ stream_id,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ kHeaders,
+ arraysize(kHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketDataFrame(
diff --git a/net/spdy/spdy_websocket_test_util_spdy3.cc b/net/spdy/spdy_websocket_test_util_spdy3.cc
index 82b10c9..afdc9d8 100644
--- a/net/spdy/spdy_websocket_test_util_spdy3.cc
+++ b/net/spdy/spdy_websocket_test_util_spdy3.cc
@@ -24,6 +24,7 @@ SpdyFrame* ConstructSpdyWebSocketSynStream(int stream_id,
const char* path,
const char* host,
const char* origin) {
+ SpdyTestUtil util(kProtoSPDY3);
const char* const kWebSocketHeaders[] = {
":path",
path,
@@ -36,31 +37,34 @@ SpdyFrame* ConstructSpdyWebSocketSynStream(int stream_id,
":origin",
origin
};
- return ConstructSpdyControlFrame(/*extra_headers*/ NULL,
- /*extra_header_count*/ 0,
- /*compressed*/ false,
- stream_id,
- HIGHEST,
- SYN_STREAM,
- CONTROL_FLAG_NONE,
- kWebSocketHeaders,
- arraysize(kWebSocketHeaders));
+ return util.ConstructSpdyControlFrame(/*extra_headers*/ NULL,
+ /*extra_header_count*/ 0,
+ /*compressed*/ false,
+ stream_id,
+ HIGHEST,
+ SYN_STREAM,
+ CONTROL_FLAG_NONE,
+ kWebSocketHeaders,
+ arraysize(kWebSocketHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketSynReply(int stream_id) {
+ SpdyTestUtil util(kProtoSPDY3);
static const char* const kStandardWebSocketHeaders[] = {
":status",
"101"
};
- return ConstructSpdyControlFrame(NULL,
- 0,
- false,
- stream_id,
- LOWEST,
- SYN_REPLY,
- CONTROL_FLAG_NONE,
- kStandardWebSocketHeaders,
- arraysize(kStandardWebSocketHeaders));
+ return util.ConstructSpdyControlFrame(NULL,
+ 0,
+ false,
+ stream_id,
+ LOWEST,
+ SYN_REPLY,
+ CONTROL_FLAG_NONE,
+ kStandardWebSocketHeaders,
+ arraysize(kStandardWebSocketHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketHandshakeRequestFrame(
@@ -128,6 +132,7 @@ SpdyFrame* ConstructSpdyWebSocketHandshakeResponseFrame(
SpdyFrame* ConstructSpdyWebSocketHeadersFrame(int stream_id,
const char* length,
bool fin) {
+ SpdyTestUtil util(kProtoSPDY3);
static const char* const kHeaders[] = {
":opcode",
"1", // text frame
@@ -136,15 +141,16 @@ SpdyFrame* ConstructSpdyWebSocketHeadersFrame(int stream_id,
":fin",
fin ? "1" : "0"
};
- return ConstructSpdyControlFrame(/*extra_headers*/ NULL,
- /*extra_header_count*/ 0,
- /*compression*/ false,
- stream_id,
- LOWEST,
- HEADERS,
- CONTROL_FLAG_NONE,
- kHeaders,
- arraysize(kHeaders));
+ return util.ConstructSpdyControlFrame(/*extra_headers*/ NULL,
+ /*extra_header_count*/ 0,
+ /*compression*/ false,
+ stream_id,
+ LOWEST,
+ HEADERS,
+ CONTROL_FLAG_NONE,
+ kHeaders,
+ arraysize(kHeaders),
+ 0);
}
SpdyFrame* ConstructSpdyWebSocketDataFrame(