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

Side by Side Diff: net/websockets/websocket_end_to_end_test.cc

Issue 2397393002: Provide child/frame IDs for WebSocket handshake request (Closed)
Patch Set: fix Created 4 years, 2 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/websockets/websocket_channel_test.cc ('k') | net/websockets/websocket_event_interface.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 // End-to-end tests for WebSocket. 5 // End-to-end tests for WebSocket.
6 // 6 //
7 // A python server is (re)started for each test, which is moderately 7 // A python server is (re)started for each test, which is moderately
8 // inefficient. However, it makes these tests a good fit for scenarios which 8 // inefficient. However, it makes these tests a good fit for scenarios which
9 // require special server configurations. 9 // require special server configurations.
10 10
(...skipping 19 matching lines...) Expand all
30 #include "net/test/spawned_test_server/spawned_test_server.h" 30 #include "net/test/spawned_test_server/spawned_test_server.h"
31 #include "net/test/test_data_directory.h" 31 #include "net/test/test_data_directory.h"
32 #include "net/url_request/url_request_test_util.h" 32 #include "net/url_request/url_request_test_util.h"
33 #include "net/websockets/websocket_channel.h" 33 #include "net/websockets/websocket_channel.h"
34 #include "net/websockets/websocket_event_interface.h" 34 #include "net/websockets/websocket_event_interface.h"
35 #include "testing/gtest/include/gtest/gtest.h" 35 #include "testing/gtest/include/gtest/gtest.h"
36 #include "url/origin.h" 36 #include "url/origin.h"
37 37
38 namespace net { 38 namespace net {
39 39
40 class URLRequest;
41
40 namespace { 42 namespace {
41 43
42 static const char kEchoServer[] = "echo-with-no-extension"; 44 static const char kEchoServer[] = "echo-with-no-extension";
43 45
44 // Simplify changing URL schemes. 46 // Simplify changing URL schemes.
45 GURL ReplaceUrlScheme(const GURL& in_url, const base::StringPiece& scheme) { 47 GURL ReplaceUrlScheme(const GURL& in_url, const base::StringPiece& scheme) {
46 GURL::Replacements replacements; 48 GURL::Replacements replacements;
47 replacements.SetSchemeStr(scheme); 49 replacements.SetSchemeStr(scheme);
48 return in_url.ReplaceComponents(replacements); 50 return in_url.ReplaceComponents(replacements);
49 } 51 }
50 52
51 // An implementation of WebSocketEventInterface that waits for and records the 53 // An implementation of WebSocketEventInterface that waits for and records the
52 // results of the connect. 54 // results of the connect.
53 class ConnectTestingEventInterface : public WebSocketEventInterface { 55 class ConnectTestingEventInterface : public WebSocketEventInterface {
54 public: 56 public:
55 ConnectTestingEventInterface(); 57 ConnectTestingEventInterface();
56 58
57 void WaitForResponse(); 59 void WaitForResponse();
58 60
59 bool failed() const { return failed_; } 61 bool failed() const { return failed_; }
60 62
61 // Only set if the handshake failed, otherwise empty. 63 // Only set if the handshake failed, otherwise empty.
62 std::string failure_message() const; 64 std::string failure_message() const;
63 65
64 std::string selected_subprotocol() const; 66 std::string selected_subprotocol() const;
65 67
66 std::string extensions() const; 68 std::string extensions() const;
67 69
68 // Implementation of WebSocketEventInterface. 70 // Implementation of WebSocketEventInterface.
71 void OnCreateURLRequest(URLRequest* request) override {}
72
69 ChannelState OnAddChannelResponse(const std::string& selected_subprotocol, 73 ChannelState OnAddChannelResponse(const std::string& selected_subprotocol,
70 const std::string& extensions) override; 74 const std::string& extensions) override;
71 75
72 ChannelState OnDataFrame(bool fin, 76 ChannelState OnDataFrame(bool fin,
73 WebSocketMessageType type, 77 WebSocketMessageType type,
74 scoped_refptr<IOBuffer> data, 78 scoped_refptr<IOBuffer> data,
75 size_t data_size) override; 79 size_t data_size) override;
76 80
77 ChannelState OnFlowControl(int64_t quota) override; 81 ChannelState OnFlowControl(int64_t quota) override;
78 82
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 GURL ws_url = ws_server.GetURL("header-continuation"); 523 GURL ws_url = ws_server.GetURL("header-continuation");
520 524
521 EXPECT_TRUE(ConnectAndWait(ws_url)); 525 EXPECT_TRUE(ConnectAndWait(ws_url));
522 EXPECT_EQ("permessage-deflate; server_max_window_bits=10", 526 EXPECT_EQ("permessage-deflate; server_max_window_bits=10",
523 event_interface_->extensions()); 527 event_interface_->extensions());
524 } 528 }
525 529
526 } // namespace 530 } // namespace
527 531
528 } // namespace net 532 } // namespace net
OLDNEW
« no previous file with comments | « net/websockets/websocket_channel_test.cc ('k') | net/websockets/websocket_event_interface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698