summaryrefslogtreecommitdiffstats
path: root/net/socket/ssl_client_socket_unittest.cc
diff options
context:
space:
mode:
authorbnc <bnc@chromium.org>2014-12-12 08:26:07 -0800
committerCommit bot <commit-bot@chromium.org>2014-12-12 16:26:40 +0000
commit90c006969d775809dc32415f3b47f41b0dcbfe65 (patch)
tree269ea6cf556ee2a5e19b54706562f08e5ba16fad /net/socket/ssl_client_socket_unittest.cc
parent2c706e549bd27317f55569dfd202c3aedaf787f9 (diff)
downloadchromium_src-90c006969d775809dc32415f3b47f41b0dcbfe65.zip
chromium_src-90c006969d775809dc32415f3b47f41b0dcbfe65.tar.gz
chromium_src-90c006969d775809dc32415f3b47f41b0dcbfe65.tar.bz2
Add SSLClientSocket::SerializeNextProtos unittest.
BUG= Review URL: https://codereview.chromium.org/801803002 Cr-Commit-Position: refs/heads/master@{#308098}
Diffstat (limited to 'net/socket/ssl_client_socket_unittest.cc')
-rw-r--r--net/socket/ssl_client_socket_unittest.cc27
1 files changed, 27 insertions, 0 deletions
diff --git a/net/socket/ssl_client_socket_unittest.cc b/net/socket/ssl_client_socket_unittest.cc
index 977c25b..d650f627df 100644
--- a/net/socket/ssl_client_socket_unittest.cc
+++ b/net/socket/ssl_client_socket_unittest.cc
@@ -2351,6 +2351,33 @@ TEST(SSLClientSocket, ClearSessionCache) {
SSLClientSocket::ClearSessionCache();
}
+TEST(SSLClientSocket, SerializeNextProtos) {
+ NextProtoVector next_protos;
+ next_protos.push_back(kProtoHTTP11);
+ next_protos.push_back(kProtoSPDY31);
+ static std::vector<uint8_t> serialized =
+ SSLClientSocket::SerializeNextProtos(next_protos);
+ ASSERT_EQ(18u, serialized.size());
+ EXPECT_EQ(8, serialized[0]); // length("http/1.1")
+ EXPECT_EQ('h', serialized[1]);
+ EXPECT_EQ('t', serialized[2]);
+ EXPECT_EQ('t', serialized[3]);
+ EXPECT_EQ('p', serialized[4]);
+ EXPECT_EQ('/', serialized[5]);
+ EXPECT_EQ('1', serialized[6]);
+ EXPECT_EQ('.', serialized[7]);
+ EXPECT_EQ('1', serialized[8]);
+ EXPECT_EQ(8, serialized[9]); // length("spdy/3.1")
+ EXPECT_EQ('s', serialized[10]);
+ EXPECT_EQ('p', serialized[11]);
+ EXPECT_EQ('d', serialized[12]);
+ EXPECT_EQ('y', serialized[13]);
+ EXPECT_EQ('/', serialized[14]);
+ EXPECT_EQ('3', serialized[15]);
+ EXPECT_EQ('.', serialized[16]);
+ EXPECT_EQ('1', serialized[17]);
+}
+
// Test that the server certificates are properly retrieved from the underlying
// SSL stack.
TEST_F(SSLClientSocketTest, VerifyServerChainProperlyOrdered) {