| 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 |