Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(471)

Side by Side Diff: net/spdy/spdy_stream_unittest.cc

Issue 2675593002: Spdy{RstStream,GoAway}Status -> SpdyErrorCode. (Closed)
Patch Set: Merged master, which includes 145087791. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/spdy/spdy_stream.cc ('k') | net/spdy/spdy_test_util_common.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "net/spdy/spdy_stream.h" 5 #include "net/spdy/spdy_stream.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <cstddef> 10 #include <cstddef>
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after
556 SpdySerializedFrame req( 556 SpdySerializedFrame req(
557 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true)); 557 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true));
558 AddWrite(req); 558 AddWrite(req);
559 559
560 const char* const kExtraHeaders[] = {"X-UpperCase", "yes"}; 560 const char* const kExtraHeaders[] = {"X-UpperCase", "yes"};
561 SpdySerializedFrame reply(spdy_util_.ConstructSpdyGetReply( 561 SpdySerializedFrame reply(spdy_util_.ConstructSpdyGetReply(
562 kExtraHeaders, arraysize(kExtraHeaders) / 2, 1)); 562 kExtraHeaders, arraysize(kExtraHeaders) / 2, 1));
563 AddRead(reply); 563 AddRead(reply);
564 564
565 SpdySerializedFrame rst( 565 SpdySerializedFrame rst(
566 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 566 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
567 AddWrite(rst); 567 AddWrite(rst);
568 568
569 AddReadEOF(); 569 AddReadEOF();
570 570
571 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 571 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
572 GetNumWrites()); 572 GetNumWrites());
573 MockConnect connect_data(SYNCHRONOUS, OK); 573 MockConnect connect_data(SYNCHRONOUS, OK);
574 data.set_connect_data(connect_data); 574 data.set_connect_data(connect_data);
575 session_deps_.socket_factory->AddSocketDataProvider(&data); 575 session_deps_.socket_factory->AddSocketDataProvider(&data);
576 576
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
615 const char* const kExtraHeaders[] = {"X-UpperCase", "yes"}; 615 const char* const kExtraHeaders[] = {"X-UpperCase", "yes"};
616 SpdySerializedFrame push(spdy_util_.ConstructSpdyPush( 616 SpdySerializedFrame push(spdy_util_.ConstructSpdyPush(
617 kExtraHeaders, arraysize(kExtraHeaders) / 2, 2, 1, kPushUrl)); 617 kExtraHeaders, arraysize(kExtraHeaders) / 2, 2, 1, kPushUrl));
618 AddRead(push); 618 AddRead(push);
619 619
620 SpdySerializedFrame priority( 620 SpdySerializedFrame priority(
621 spdy_util_.ConstructSpdyPriority(2, 1, IDLE, true)); 621 spdy_util_.ConstructSpdyPriority(2, 1, IDLE, true));
622 AddWrite(priority); 622 AddWrite(priority);
623 623
624 SpdySerializedFrame rst( 624 SpdySerializedFrame rst(
625 spdy_util_.ConstructSpdyRstStream(2, RST_STREAM_PROTOCOL_ERROR)); 625 spdy_util_.ConstructSpdyRstStream(2, ERROR_CODE_PROTOCOL_ERROR));
626 AddWrite(rst); 626 AddWrite(rst);
627 627
628 AddReadPause(); 628 AddReadPause();
629 629
630 AddReadEOF(); 630 AddReadEOF();
631 631
632 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 632 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
633 GetNumWrites()); 633 GetNumWrites());
634 MockConnect connect_data(SYNCHRONOUS, OK); 634 MockConnect connect_data(SYNCHRONOUS, OK);
635 data.set_connect_data(connect_data); 635 data.set_connect_data(connect_data);
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
679 SpdyHeaderBlock header_block_without_status; 679 SpdyHeaderBlock header_block_without_status;
680 header_block_without_status[spdy_util_.GetMethodKey()] = "GET"; 680 header_block_without_status[spdy_util_.GetMethodKey()] = "GET";
681 header_block_without_status[spdy_util_.GetHostKey()] = "www.example.org"; 681 header_block_without_status[spdy_util_.GetHostKey()] = "www.example.org";
682 header_block_without_status[spdy_util_.GetSchemeKey()] = "https"; 682 header_block_without_status[spdy_util_.GetSchemeKey()] = "https";
683 header_block_without_status[spdy_util_.GetPathKey()] = "/"; 683 header_block_without_status[spdy_util_.GetPathKey()] = "/";
684 SpdySerializedFrame reply( 684 SpdySerializedFrame reply(
685 spdy_util_.ConstructSpdyReply(1, std::move(header_block_without_status))); 685 spdy_util_.ConstructSpdyReply(1, std::move(header_block_without_status)));
686 AddRead(reply); 686 AddRead(reply);
687 687
688 SpdySerializedFrame rst( 688 SpdySerializedFrame rst(
689 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 689 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
690 AddWrite(rst); 690 AddWrite(rst);
691 691
692 AddReadEOF(); 692 AddReadEOF();
693 693
694 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 694 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
695 GetNumWrites()); 695 GetNumWrites());
696 MockConnect connect_data(SYNCHRONOUS, OK); 696 MockConnect connect_data(SYNCHRONOUS, OK);
697 data.set_connect_data(connect_data); 697 data.set_connect_data(connect_data);
698 session_deps_.socket_factory->AddSocketDataProvider(&data); 698 session_deps_.socket_factory->AddSocketDataProvider(&data);
699 699
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 SpdyHeaderBlock header_block_without_status; 744 SpdyHeaderBlock header_block_without_status;
745 header_block_without_status[spdy_util_.GetMethodKey()] = "GET"; 745 header_block_without_status[spdy_util_.GetMethodKey()] = "GET";
746 header_block_without_status[spdy_util_.GetHostKey()] = "www.example.org"; 746 header_block_without_status[spdy_util_.GetHostKey()] = "www.example.org";
747 header_block_without_status[spdy_util_.GetSchemeKey()] = "https"; 747 header_block_without_status[spdy_util_.GetSchemeKey()] = "https";
748 header_block_without_status[spdy_util_.GetPathKey()] = "/"; 748 header_block_without_status[spdy_util_.GetPathKey()] = "/";
749 SpdySerializedFrame pushed_reply( 749 SpdySerializedFrame pushed_reply(
750 spdy_util_.ConstructSpdyReply(2, std::move(header_block_without_status))); 750 spdy_util_.ConstructSpdyReply(2, std::move(header_block_without_status)));
751 AddRead(pushed_reply); 751 AddRead(pushed_reply);
752 752
753 SpdySerializedFrame rst( 753 SpdySerializedFrame rst(
754 spdy_util_.ConstructSpdyRstStream(2, RST_STREAM_PROTOCOL_ERROR)); 754 spdy_util_.ConstructSpdyRstStream(2, ERROR_CODE_PROTOCOL_ERROR));
755 AddWrite(rst); 755 AddWrite(rst);
756 756
757 SpdySerializedFrame body( 757 SpdySerializedFrame body(
758 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true)); 758 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true));
759 AddRead(body); 759 AddRead(body);
760 760
761 AddReadEOF(); 761 AddReadEOF();
762 762
763 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 763 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
764 GetNumWrites()); 764 GetNumWrites());
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
801 SpdySerializedFrame req( 801 SpdySerializedFrame req(
802 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true)); 802 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true));
803 AddWrite(req); 803 AddWrite(req);
804 804
805 // Response body not preceeded by headers: protocol error. 805 // Response body not preceeded by headers: protocol error.
806 SpdySerializedFrame body( 806 SpdySerializedFrame body(
807 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true)); 807 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true));
808 AddRead(body); 808 AddRead(body);
809 809
810 SpdySerializedFrame rst( 810 SpdySerializedFrame rst(
811 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 811 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
812 AddWrite(rst); 812 AddWrite(rst);
813 813
814 AddReadEOF(); 814 AddReadEOF();
815 815
816 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 816 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
817 GetNumWrites()); 817 GetNumWrites());
818 MockConnect connect_data(SYNCHRONOUS, OK); 818 MockConnect connect_data(SYNCHRONOUS, OK);
819 data.set_connect_data(connect_data); 819 data.set_connect_data(connect_data);
820 session_deps_.socket_factory->AddSocketDataProvider(&data); 820 session_deps_.socket_factory->AddSocketDataProvider(&data);
821 821
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
854 854
855 SpdySerializedFrame priority( 855 SpdySerializedFrame priority(
856 spdy_util_.ConstructSpdyPriority(2, 1, IDLE, true)); 856 spdy_util_.ConstructSpdyPriority(2, 1, IDLE, true));
857 AddWrite(priority); 857 AddWrite(priority);
858 858
859 SpdySerializedFrame pushed_body( 859 SpdySerializedFrame pushed_body(
860 spdy_util_.ConstructSpdyDataFrame(2, kPostBody, kPostBodyLength, true)); 860 spdy_util_.ConstructSpdyDataFrame(2, kPostBody, kPostBodyLength, true));
861 AddRead(pushed_body); 861 AddRead(pushed_body);
862 862
863 SpdySerializedFrame rst( 863 SpdySerializedFrame rst(
864 spdy_util_.ConstructSpdyRstStream(2, RST_STREAM_PROTOCOL_ERROR)); 864 spdy_util_.ConstructSpdyRstStream(2, ERROR_CODE_PROTOCOL_ERROR));
865 AddWrite(rst); 865 AddWrite(rst);
866 866
867 SpdySerializedFrame body( 867 SpdySerializedFrame body(
868 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true)); 868 spdy_util_.ConstructSpdyDataFrame(1, kPostBody, kPostBodyLength, true));
869 AddRead(body); 869 AddRead(body);
870 870
871 AddReadEOF(); 871 AddReadEOF();
872 872
873 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 873 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
874 GetNumWrites()); 874 GetNumWrites());
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
924 SpdySerializedFrame first_trailers(spdy_util_.ConstructSpdyResponseHeaders( 924 SpdySerializedFrame first_trailers(spdy_util_.ConstructSpdyResponseHeaders(
925 1, std::move(trailers_block), false)); 925 1, std::move(trailers_block), false));
926 AddRead(first_trailers); 926 AddRead(first_trailers);
927 927
928 // Trailers following trailers: procotol error. 928 // Trailers following trailers: procotol error.
929 SpdySerializedFrame second_trailers(spdy_util_.ConstructSpdyResponseHeaders( 929 SpdySerializedFrame second_trailers(spdy_util_.ConstructSpdyResponseHeaders(
930 1, std::move(trailers_block), true)); 930 1, std::move(trailers_block), true));
931 AddRead(second_trailers); 931 AddRead(second_trailers);
932 932
933 SpdySerializedFrame rst( 933 SpdySerializedFrame rst(
934 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 934 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
935 AddWrite(rst); 935 AddWrite(rst);
936 936
937 AddReadEOF(); 937 AddReadEOF();
938 938
939 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 939 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
940 GetNumWrites()); 940 GetNumWrites());
941 MockConnect connect_data(SYNCHRONOUS, OK); 941 MockConnect connect_data(SYNCHRONOUS, OK);
942 data.set_connect_data(connect_data); 942 data.set_connect_data(connect_data);
943 session_deps_.socket_factory->AddSocketDataProvider(&data); 943 session_deps_.socket_factory->AddSocketDataProvider(&data);
944 944
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
984 SpdyHeaderBlock trailers_block; 984 SpdyHeaderBlock trailers_block;
985 trailers_block["foo"] = "bar"; 985 trailers_block["foo"] = "bar";
986 SpdySerializedFrame trailers(spdy_util_.ConstructSpdyResponseHeaders( 986 SpdySerializedFrame trailers(spdy_util_.ConstructSpdyResponseHeaders(
987 1, std::move(trailers_block), false)); 987 1, std::move(trailers_block), false));
988 AddRead(trailers); 988 AddRead(trailers);
989 989
990 // DATA frame following trailers: protocol error. 990 // DATA frame following trailers: protocol error.
991 AddRead(body); 991 AddRead(body);
992 992
993 SpdySerializedFrame rst( 993 SpdySerializedFrame rst(
994 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 994 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
995 AddWrite(rst); 995 AddWrite(rst);
996 996
997 AddReadEOF(); 997 AddReadEOF();
998 998
999 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 999 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
1000 GetNumWrites()); 1000 GetNumWrites());
1001 MockConnect connect_data(SYNCHRONOUS, OK); 1001 MockConnect connect_data(SYNCHRONOUS, OK);
1002 data.set_connect_data(connect_data); 1002 data.set_connect_data(connect_data);
1003 session_deps_.socket_factory->AddSocketDataProvider(&data); 1003 session_deps_.socket_factory->AddSocketDataProvider(&data);
1004 1004
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
1091 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true)); 1091 spdy_util_.ConstructSpdyGet(nullptr, 0, 1, LOWEST, true));
1092 AddWrite(req); 1092 AddWrite(req);
1093 1093
1094 SpdyHeaderBlock incorrect_headers; 1094 SpdyHeaderBlock incorrect_headers;
1095 incorrect_headers[":status"] = "nan"; 1095 incorrect_headers[":status"] = "nan";
1096 SpdySerializedFrame reply(spdy_util_.ConstructSpdyResponseHeaders( 1096 SpdySerializedFrame reply(spdy_util_.ConstructSpdyResponseHeaders(
1097 1, std::move(incorrect_headers), false)); 1097 1, std::move(incorrect_headers), false));
1098 AddRead(reply); 1098 AddRead(reply);
1099 1099
1100 SpdySerializedFrame rst( 1100 SpdySerializedFrame rst(
1101 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_PROTOCOL_ERROR)); 1101 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_PROTOCOL_ERROR));
1102 AddWrite(rst); 1102 AddWrite(rst);
1103 1103
1104 AddReadEOF(); 1104 AddReadEOF();
1105 1105
1106 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 1106 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
1107 GetNumWrites()); 1107 GetNumWrites());
1108 MockConnect connect_data(SYNCHRONOUS, OK); 1108 MockConnect connect_data(SYNCHRONOUS, OK);
1109 data.set_connect_data(connect_data); 1109 data.set_connect_data(connect_data);
1110 session_deps_.socket_factory->AddSocketDataProvider(&data); 1110 session_deps_.socket_factory->AddSocketDataProvider(&data);
1111 1111
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
1196 TEST_F(SpdyStreamTest, IncreaseSendWindowSizeOverflow) { 1196 TEST_F(SpdyStreamTest, IncreaseSendWindowSizeOverflow) {
1197 SpdySerializedFrame req(spdy_util_.ConstructSpdyPost( 1197 SpdySerializedFrame req(spdy_util_.ConstructSpdyPost(
1198 kDefaultUrl, 1, kPostBodyLength, LOWEST, nullptr, 0)); 1198 kDefaultUrl, 1, kPostBodyLength, LOWEST, nullptr, 0));
1199 AddWrite(req); 1199 AddWrite(req);
1200 1200
1201 AddReadPause(); 1201 AddReadPause();
1202 1202
1203 // Triggered by the overflowing call to IncreaseSendWindowSize 1203 // Triggered by the overflowing call to IncreaseSendWindowSize
1204 // below. 1204 // below.
1205 SpdySerializedFrame rst( 1205 SpdySerializedFrame rst(
1206 spdy_util_.ConstructSpdyRstStream(1, RST_STREAM_FLOW_CONTROL_ERROR)); 1206 spdy_util_.ConstructSpdyRstStream(1, ERROR_CODE_FLOW_CONTROL_ERROR));
1207 AddWrite(rst); 1207 AddWrite(rst);
1208 1208
1209 AddReadEOF(); 1209 AddReadEOF();
1210 1210
1211 BoundTestNetLog log; 1211 BoundTestNetLog log;
1212 1212
1213 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(), 1213 SequencedSocketData data(GetReads(), GetNumReads(), GetWrites(),
1214 GetNumWrites()); 1214 GetNumWrites());
1215 MockConnect connect_data(SYNCHRONOUS, OK); 1215 MockConnect connect_data(SYNCHRONOUS, OK);
1216 data.set_connect_data(connect_data); 1216 data.set_connect_data(connect_data);
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
1499 EXPECT_EQ(response_len, stream->raw_received_bytes()); 1499 EXPECT_EQ(response_len, stream->raw_received_bytes());
1500 1500
1501 // FIN 1501 // FIN
1502 data.Resume(); 1502 data.Resume();
1503 EXPECT_THAT(delegate.WaitForClose(), IsError(ERR_CONNECTION_CLOSED)); 1503 EXPECT_THAT(delegate.WaitForClose(), IsError(ERR_CONNECTION_CLOSED));
1504 } 1504 }
1505 1505
1506 } // namespace test 1506 } // namespace test
1507 1507
1508 } // namespace net 1508 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_stream.cc ('k') | net/spdy/spdy_test_util_common.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698