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 <algorithm> | 5 #include <algorithm> |
6 #include <iostream> | 6 #include <iostream> |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 1077 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1088 | 1088 |
1089 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #3 | 1089 0x80, spdy_version_ch_, 0x00, 0x03, // RST_STREAM on Stream #3 |
1090 0x00, 0x00, 0x00, 0x08, | 1090 0x00, 0x00, 0x00, 0x08, |
1091 0x00, 0x00, 0x00, 0x03, | 1091 0x00, 0x00, 0x00, 0x03, |
1092 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL | 1092 0x00, 0x00, 0x00, 0x05, // RST_STREAM_CANCEL |
1093 }; | 1093 }; |
1094 | 1094 |
1095 // SYN_STREAM doesn't exist in SPDY4, so instead we send | 1095 // SYN_STREAM doesn't exist in SPDY4, so instead we send |
1096 // HEADERS frames with PRIORITY and END_HEADERS set. | 1096 // HEADERS frames with PRIORITY and END_HEADERS set. |
1097 const unsigned char kV4Input[] = { | 1097 const unsigned char kV4Input[] = { |
1098 0x00, 0x05, 0x01, 0x0c, // HEADERS: PRIORITY | END_HEADERS | 1098 0x00, 0x05, 0x01, 0x24, // HEADERS: PRIORITY | END_HEADERS |
1099 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1099 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1100 0x00, 0x00, 0x00, 0x00, // Priority 0 | 1100 0x00, 0x00, 0x00, 0x00, // Priority 0 |
1101 0x82, // :method: GET | 1101 0x82, // :method: GET |
1102 | 1102 |
1103 0x00, 0x01, 0x01, 0x04, // HEADERS: END_HEADERS | 1103 0x00, 0x01, 0x01, 0x04, // HEADERS: END_HEADERS |
1104 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1104 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1105 0x8c, // :status: 200 | 1105 0x8c, // :status: 200 |
1106 | 1106 |
1107 0x00, 0x0c, 0x00, 0x00, // DATA on Stream #1 | 1107 0x00, 0x0c, 0x00, 0x00, // DATA on Stream #1 |
1108 0x00, 0x00, 0x00, 0x01, | 1108 0x00, 0x00, 0x00, 0x01, |
1109 0xde, 0xad, 0xbe, 0xef, | 1109 0xde, 0xad, 0xbe, 0xef, |
1110 0xde, 0xad, 0xbe, 0xef, | 1110 0xde, 0xad, 0xbe, 0xef, |
1111 0xde, 0xad, 0xbe, 0xef, | 1111 0xde, 0xad, 0xbe, 0xef, |
1112 | 1112 |
1113 0x00, 0x05, 0x01, 0x0c, // HEADERS: PRIORITY | END_HEADERS | 1113 0x00, 0x05, 0x01, 0x24, // HEADERS: PRIORITY | END_HEADERS |
1114 0x00, 0x00, 0x00, 0x03, // Stream 3 | 1114 0x00, 0x00, 0x00, 0x03, // Stream 3 |
1115 0x00, 0x00, 0x00, 0x00, // Priority 0 | 1115 0x00, 0x00, 0x00, 0x00, // Priority 0 |
1116 0x82, // :method: GET | 1116 0x82, // :method: GET |
1117 | 1117 |
1118 0x00, 0x08, 0x00, 0x00, // DATA on Stream #3 | 1118 0x00, 0x08, 0x00, 0x00, // DATA on Stream #3 |
1119 0x00, 0x00, 0x00, 0x03, | 1119 0x00, 0x00, 0x00, 0x03, |
1120 0xde, 0xad, 0xbe, 0xef, | 1120 0xde, 0xad, 0xbe, 0xef, |
1121 0xde, 0xad, 0xbe, 0xef, | 1121 0xde, 0xad, 0xbe, 0xef, |
1122 | 1122 |
1123 0x00, 0x04, 0x00, 0x00, // DATA on Stream #1 | 1123 0x00, 0x04, 0x00, 0x00, // DATA on Stream #1 |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1223 0xde, 0xad, 0xbe, 0xef, | 1223 0xde, 0xad, 0xbe, 0xef, |
1224 | 1224 |
1225 0x00, 0x00, 0x00, 0x01, // DATA on Stream #1, with EOF | 1225 0x00, 0x00, 0x00, 0x01, // DATA on Stream #1, with EOF |
1226 0x01, 0x00, 0x00, 0x04, | 1226 0x01, 0x00, 0x00, 0x04, |
1227 0xde, 0xad, 0xbe, 0xef, | 1227 0xde, 0xad, 0xbe, 0xef, |
1228 }; | 1228 }; |
1229 | 1229 |
1230 // SYN_STREAM and SYN_REPLY don't exist in SPDY4, so instead we send | 1230 // SYN_STREAM and SYN_REPLY don't exist in SPDY4, so instead we send |
1231 // HEADERS frames with PRIORITY(SYN_STREAM only) and END_HEADERS set. | 1231 // HEADERS frames with PRIORITY(SYN_STREAM only) and END_HEADERS set. |
1232 const unsigned char kV4Input[] = { | 1232 const unsigned char kV4Input[] = { |
1233 0x00, 0x05, 0x01, 0x0c, // HEADERS: PRIORITY | END_HEADERS | 1233 0x00, 0x05, 0x01, 0x24, // HEADERS: PRIORITY | END_HEADERS |
1234 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1234 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1235 0x00, 0x00, 0x00, 0x00, // Priority 0 | 1235 0x00, 0x00, 0x00, 0x00, // Priority 0 |
1236 0x82, // :method: GET | 1236 0x82, // :method: GET |
1237 | 1237 |
1238 0x00, 0x01, 0x01, 0x04, // HEADERS: END_HEADERS | 1238 0x00, 0x01, 0x01, 0x04, // HEADERS: END_HEADERS |
1239 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1239 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1240 0x8c, // :status: 200 | 1240 0x8c, // :status: 200 |
1241 | 1241 |
1242 0x00, 0x0c, 0x00, 0x00, // DATA on Stream #1 | 1242 0x00, 0x0c, 0x00, 0x00, // DATA on Stream #1 |
1243 0x00, 0x00, 0x00, 0x01, | 1243 0x00, 0x00, 0x00, 0x01, |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1309 0x00, 0x00, 0x00, 0x01, | 1309 0x00, 0x00, 0x00, 0x01, |
1310 0x00, 0x00, 0x00, 0x01, | 1310 0x00, 0x00, 0x00, 0x01, |
1311 0x00, 0x00, 0x00, 0x02, | 1311 0x00, 0x00, 0x00, 0x02, |
1312 'a', 'a', 0x00, 0x00, | 1312 'a', 'a', 0x00, 0x00, |
1313 0x00, 0x02, 'b', 'b', | 1313 0x00, 0x02, 'b', 'b', |
1314 }; | 1314 }; |
1315 | 1315 |
1316 // SYN_STREAM and SYN_REPLY don't exist in SPDY4, so instead we send | 1316 // SYN_STREAM and SYN_REPLY don't exist in SPDY4, so instead we send |
1317 // HEADERS frames with PRIORITY(SYN_STREAM only) and END_HEADERS set. | 1317 // HEADERS frames with PRIORITY(SYN_STREAM only) and END_HEADERS set. |
1318 const unsigned char kV4Input[] = { | 1318 const unsigned char kV4Input[] = { |
1319 0x00, 0x05, 0x01, 0x0c, // HEADERS: PRIORITY | END_HEADERS | 1319 0x00, 0x05, 0x01, 0x24, // HEADERS: PRIORITY | END_HEADERS |
1320 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1320 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1321 0x00, 0x00, 0x00, 0x00, // Priority 0 | 1321 0x00, 0x00, 0x00, 0x00, // Priority 0 |
1322 0x82, // :method: GET | 1322 0x82, // :method: GET |
1323 | 1323 |
1324 0x00, 0x01, 0x01, 0x05, // HEADERS: FIN | END_HEADERS | 1324 0x00, 0x01, 0x01, 0x05, // HEADERS: FIN | END_HEADERS |
1325 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1325 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1326 0x8c, // :status: 200 | 1326 0x8c, // :status: 200 |
1327 }; | 1327 }; |
1328 | 1328 |
1329 TestSpdyVisitor visitor(spdy_version_); | 1329 TestSpdyVisitor visitor(spdy_version_); |
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1580 { | 1580 { |
1581 const char kDescription[] = "'hello' data frame with more padding, no FIN"; | 1581 const char kDescription[] = "'hello' data frame with more padding, no FIN"; |
1582 const unsigned char kV3FrameData[] = { // Also applies for V2. | 1582 const unsigned char kV3FrameData[] = { // Also applies for V2. |
1583 0x00, 0x00, 0x00, 0x01, | 1583 0x00, 0x00, 0x00, 0x01, |
1584 0x00, 0x00, 0x00, 0x05, | 1584 0x00, 0x00, 0x00, 0x05, |
1585 'h', 'e', 'l', 'l', | 1585 'h', 'e', 'l', 'l', |
1586 'o' | 1586 'o' |
1587 }; | 1587 }; |
1588 | 1588 |
1589 const unsigned char kV4FrameData[] = { | 1589 const unsigned char kV4FrameData[] = { |
1590 0x01, 0x0b, 0x00, 0x30, // Length = 267. PAD_HIGH and PAD_LOW set. | 1590 0x01, 0x0b, 0x00, 0x18, // Length = 267. PAD_HIGH and PAD_LOW set. |
1591 0x00, 0x00, 0x00, 0x01, | 1591 0x00, 0x00, 0x00, 0x01, |
1592 0x01, 0x04, // Pad Low and Pad High fields. | 1592 0x01, 0x04, // Pad Low and Pad High fields. |
1593 'h', 'e', 'l', 'l', // Data | 1593 'h', 'e', 'l', 'l', // Data |
1594 'o', | 1594 'o', |
1595 // Padding of 260 zeros (so both PAD_HIGH and PAD_LOW fields are used). | 1595 // Padding of 260 zeros (so both PAD_HIGH and PAD_LOW fields are used). |
1596 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', | 1596 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', |
1597 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', | 1597 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', |
1598 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', | 1598 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', |
1599 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', | 1599 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', |
1600 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', | 1600 '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1641 { | 1641 { |
1642 const char kDescription[] = "'hello' data frame with few padding, no FIN"; | 1642 const char kDescription[] = "'hello' data frame with few padding, no FIN"; |
1643 const unsigned char kV3FrameData[] = { // Also applies for V2. | 1643 const unsigned char kV3FrameData[] = { // Also applies for V2. |
1644 0x00, 0x00, 0x00, 0x01, | 1644 0x00, 0x00, 0x00, 0x01, |
1645 0x00, 0x00, 0x00, 0x05, | 1645 0x00, 0x00, 0x00, 0x05, |
1646 'h', 'e', 'l', 'l', | 1646 'h', 'e', 'l', 'l', |
1647 'o' | 1647 'o' |
1648 }; | 1648 }; |
1649 | 1649 |
1650 const unsigned char kV4FrameData[] = { | 1650 const unsigned char kV4FrameData[] = { |
1651 0x00, 0x0d, 0x00, 0x10, // Length = 13. PAD_LOW set. | 1651 0x00, 0x0d, 0x00, 0x08, // Length = 13. PAD_LOW set. |
1652 0x00, 0x00, 0x00, 0x01, | 1652 0x00, 0x00, 0x00, 0x01, |
1653 0x07, // Pad Low field. | 1653 0x07, // Pad Low field. |
1654 'h', 'e', 'l', 'l', // Data | 1654 'h', 'e', 'l', 'l', // Data |
1655 'o', | 1655 'o', |
1656 '0', '0', '0', '0', // Padding | 1656 '0', '0', '0', '0', // Padding |
1657 '0', '0', '0' | 1657 '0', '0', '0' |
1658 }; | 1658 }; |
1659 const char bytes[] = "hello"; | 1659 const char bytes[] = "hello"; |
1660 | 1660 |
1661 SpdyDataIR data_ir(1, StringPiece(bytes, strlen(bytes))); | 1661 SpdyDataIR data_ir(1, StringPiece(bytes, strlen(bytes))); |
(...skipping 13 matching lines...) Expand all Loading... |
1675 const char kDescription[] = | 1675 const char kDescription[] = |
1676 "'hello' data frame with 1 byte padding, no FIN"; | 1676 "'hello' data frame with 1 byte padding, no FIN"; |
1677 const unsigned char kV3FrameData[] = { // Also applies for V2. | 1677 const unsigned char kV3FrameData[] = { // Also applies for V2. |
1678 0x00, 0x00, 0x00, 0x01, | 1678 0x00, 0x00, 0x00, 0x01, |
1679 0x00, 0x00, 0x00, 0x05, | 1679 0x00, 0x00, 0x00, 0x05, |
1680 'h', 'e', 'l', 'l', | 1680 'h', 'e', 'l', 'l', |
1681 'o' | 1681 'o' |
1682 }; | 1682 }; |
1683 | 1683 |
1684 const unsigned char kV4FrameData[] = { | 1684 const unsigned char kV4FrameData[] = { |
1685 0x00, 0x06, 0x00, 0x10, // Length = 6. PAD_LOW set. | 1685 0x00, 0x06, 0x00, 0x08, // Length = 6. PAD_LOW set. |
1686 0x00, 0x00, 0x00, 0x01, | 1686 0x00, 0x00, 0x00, 0x01, |
1687 0x00, // Pad Low field. | 1687 0x00, // Pad Low field. |
1688 'h', 'e', 'l', 'l', // Data | 1688 'h', 'e', 'l', 'l', // Data |
1689 'o', | 1689 'o', |
1690 }; | 1690 }; |
1691 const char bytes[] = "hello"; | 1691 const char bytes[] = "hello"; |
1692 | 1692 |
1693 SpdyDataIR data_ir(1, StringPiece(bytes, strlen(bytes))); | 1693 SpdyDataIR data_ir(1, StringPiece(bytes, strlen(bytes))); |
1694 // The pad low field itself is used for the 1-byte padding and no padding | 1694 // The pad low field itself is used for the 1-byte padding and no padding |
1695 // payload is needed. | 1695 // payload is needed. |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1869 0x00, 0x02, 0x00, 0x00, | 1869 0x00, 0x02, 0x00, 0x00, |
1870 0x00, 0x03, 'b', 'a', | 1870 0x00, 0x03, 'b', 'a', |
1871 'r', 0x00, 0x00, 0x00, | 1871 'r', 0x00, 0x00, 0x00, |
1872 0x03, 'f', 'o', 'o', | 1872 0x03, 'f', 'o', 'o', |
1873 0x00, 0x00, 0x00, 0x03, | 1873 0x00, 0x00, 0x00, 0x03, |
1874 'f', 'o', 'o', 0x00, | 1874 'f', 'o', 'o', 0x00, |
1875 0x00, 0x00, 0x03, 'b', | 1875 0x00, 0x00, 0x03, 'b', |
1876 'a', 'r' | 1876 'a', 'r' |
1877 }; | 1877 }; |
1878 const unsigned char kV4FrameData[] = { | 1878 const unsigned char kV4FrameData[] = { |
1879 0x00, 0x16, 0x01, 0x0c, // HEADERS: PRIORITY | END_HEADERS | 1879 0x00, 0x16, 0x01, 0x24, // HEADERS: PRIORITY | END_HEADERS |
1880 0x00, 0x00, 0x00, 0x01, // Stream 1 | 1880 0x00, 0x00, 0x00, 0x01, // Stream 1 |
1881 0x00, 0x00, 0x00, 0x07, // Priority 7 | 1881 0x00, 0x00, 0x00, 0x07, // Priority 7 |
1882 0x00, 0x03, 0x62, 0x61, // @.ba | 1882 0x00, 0x03, 0x62, 0x61, // @.ba |
1883 0x72, 0x03, 0x66, 0x6f, // r.fo | 1883 0x72, 0x03, 0x66, 0x6f, // r.fo |
1884 0x6f, 0x00, 0x03, 0x66, // o@.f | 1884 0x6f, 0x00, 0x03, 0x66, // o@.f |
1885 0x6f, 0x6f, 0x03, 0x62, // oo.b | 1885 0x6f, 0x6f, 0x03, 0x62, // oo.b |
1886 0x61, 0x72, // ar | 1886 0x61, 0x72, // ar |
1887 }; | 1887 }; |
1888 SpdySynStreamIR syn_stream(1); | 1888 SpdySynStreamIR syn_stream(1); |
1889 syn_stream.set_priority(framer.GetLowestPriority()); | 1889 syn_stream.set_priority(framer.GetLowestPriority()); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1924 0x00, 0x00, 0x00, 0x00, | 1924 0x00, 0x00, 0x00, 0x00, |
1925 0x00, 0x02, 0x00, 0x00, | 1925 0x00, 0x02, 0x00, 0x00, |
1926 0x00, 0x00, 0x00, 0x00, | 1926 0x00, 0x00, 0x00, 0x00, |
1927 0x00, 0x03, 'f', 'o', | 1927 0x00, 0x03, 'f', 'o', |
1928 'o', 0x00, 0x00, 0x00, | 1928 'o', 0x00, 0x00, 0x00, |
1929 0x03, 'f', 'o', 'o', | 1929 0x03, 'f', 'o', 'o', |
1930 0x00, 0x00, 0x00, 0x03, | 1930 0x00, 0x00, 0x00, 0x03, |
1931 'b', 'a', 'r' | 1931 'b', 'a', 'r' |
1932 }; | 1932 }; |
1933 const unsigned char kV4FrameData[] = { | 1933 const unsigned char kV4FrameData[] = { |
1934 0x00, 0x13, 0x01, 0x0d, // HEADERS: PRIORITY | FIN | END_HEADERS | 1934 0x00, 0x13, 0x01, 0x25, // HEADERS: PRIORITY | FIN | END_HEADERS |
1935 0x7f, 0xff, 0xff, 0xff, // Stream 0x7fffffff | 1935 0x7f, 0xff, 0xff, 0xff, // Stream 0x7fffffff |
1936 0x00, 0x00, 0x00, 0x00, // Priority 0 | 1936 0x00, 0x00, 0x00, 0x00, // Priority 0 |
1937 0x00, 0x00, 0x03, 0x66, // @..f | 1937 0x00, 0x00, 0x03, 0x66, // @..f |
1938 0x6f, 0x6f, 0x00, 0x03, // oo@. | 1938 0x6f, 0x6f, 0x00, 0x03, // oo@. |
1939 0x66, 0x6f, 0x6f, 0x03, // foo. | 1939 0x66, 0x6f, 0x6f, 0x03, // foo. |
1940 0x62, 0x61, 0x72, // bar | 1940 0x62, 0x61, 0x72, // bar |
1941 }; | 1941 }; |
1942 SpdySynStreamIR syn_stream(0x7fffffff); | 1942 SpdySynStreamIR syn_stream(0x7fffffff); |
1943 syn_stream.set_associated_to_stream_id(0x7fffffff); | 1943 syn_stream.set_associated_to_stream_id(0x7fffffff); |
1944 syn_stream.set_priority(framer.GetHighestPriority()); | 1944 syn_stream.set_priority(framer.GetHighestPriority()); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1981 kPri, 0x00, 0x00, 0x00, | 1981 kPri, 0x00, 0x00, 0x00, |
1982 0x00, 0x02, 0x00, 0x00, | 1982 0x00, 0x02, 0x00, 0x00, |
1983 0x00, 0x03, 'b', 'a', | 1983 0x00, 0x03, 'b', 'a', |
1984 'r', 0x00, 0x00, 0x00, | 1984 'r', 0x00, 0x00, 0x00, |
1985 0x03, 'f', 'o', 'o', | 1985 0x03, 'f', 'o', 'o', |
1986 0x00, 0x00, 0x00, 0x03, | 1986 0x00, 0x00, 0x00, 0x03, |
1987 'f', 'o', 'o', 0x00, | 1987 'f', 'o', 'o', 0x00, |
1988 0x00, 0x00, 0x00 | 1988 0x00, 0x00, 0x00 |
1989 }; | 1989 }; |
1990 const unsigned char kV4FrameData[] = { | 1990 const unsigned char kV4FrameData[] = { |
1991 0x00, 0x13, 0x01, 0x0d, // HEADERS: PRIORITY | FIN | END_HEADERS | 1991 0x00, 0x13, 0x01, 0x25, // HEADERS: PRIORITY | FIN | END_HEADERS |
1992 0x7f, 0xff, 0xff, 0xff, // Stream 0x7fffffff | 1992 0x7f, 0xff, 0xff, 0xff, // Stream 0x7fffffff |
1993 0x00, 0x00, 0x00, 0x01, // Priority 1 | 1993 0x00, 0x00, 0x00, 0x01, // Priority 1 |
1994 0x00, 0x03, 0x62, 0x61, // @.ba | 1994 0x00, 0x03, 0x62, 0x61, // @.ba |
1995 0x72, 0x03, 0x66, 0x6f, // r.fo | 1995 0x72, 0x03, 0x66, 0x6f, // r.fo |
1996 0x6f, 0x00, 0x03, 0x66, // o@.f | 1996 0x6f, 0x00, 0x03, 0x66, // o@.f |
1997 0x6f, 0x6f, 0x00, // oo. | 1997 0x6f, 0x6f, 0x00, // oo. |
1998 }; | 1998 }; |
1999 SpdySynStreamIR syn_stream(0x7fffffff); | 1999 SpdySynStreamIR syn_stream(0x7fffffff); |
2000 syn_stream.set_associated_to_stream_id(0x7fffffff); | 2000 syn_stream.set_associated_to_stream_id(0x7fffffff); |
2001 syn_stream.set_priority(1); | 2001 syn_stream.set_priority(1); |
(...skipping 3211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5213 } | 5213 } |
5214 EXPECT_EQ(0, visitor.error_count_); | 5214 EXPECT_EQ(0, visitor.error_count_); |
5215 EXPECT_EQ(1, visitor.altsvc_count_); | 5215 EXPECT_EQ(1, visitor.altsvc_count_); |
5216 EXPECT_EQ(20u, visitor.test_altsvc_ir_.max_age()); | 5216 EXPECT_EQ(20u, visitor.test_altsvc_ir_.max_age()); |
5217 EXPECT_EQ(443u, visitor.test_altsvc_ir_.port()); | 5217 EXPECT_EQ(443u, visitor.test_altsvc_ir_.port()); |
5218 EXPECT_EQ("protocolid", visitor.test_altsvc_ir_.protocol_id()); | 5218 EXPECT_EQ("protocolid", visitor.test_altsvc_ir_.protocol_id()); |
5219 EXPECT_EQ("hostname", visitor.test_altsvc_ir_.host()); | 5219 EXPECT_EQ("hostname", visitor.test_altsvc_ir_.host()); |
5220 } | 5220 } |
5221 | 5221 |
5222 } // namespace net | 5222 } // namespace net |
OLD | NEW |