OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "blimp/net/blimp_message_demultiplexer.h" | 5 #include "blimp/net/blimp_message_demultiplexer.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "blimp/net/test_common.h" | 8 #include "blimp/net/test_common.h" |
9 #include "net/base/net_errors.h" | 9 #include "net/base/net_errors.h" |
10 #include "net/base/test_completion_callback.h" | 10 #include "net/base/test_completion_callback.h" |
11 #include "testing/gmock/include/gmock/gmock.h" | 11 #include "testing/gmock/include/gmock/gmock.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 | 13 |
14 using testing::_; | 14 using testing::_; |
15 using testing::InvokeArgument; | 15 using testing::InvokeArgument; |
16 using testing::Ref; | 16 using testing::Ref; |
17 using testing::Return; | 17 using testing::Return; |
18 using testing::SaveArg; | 18 using testing::SaveArg; |
19 | 19 |
20 namespace blimp { | 20 namespace blimp { |
21 | 21 |
22 class BlimpMessageDemultiplexerTest : public testing::Test { | 22 class BlimpMessageDemultiplexerTest : public testing::Test { |
23 public: | 23 public: |
24 BlimpMessageDemultiplexerTest() | 24 BlimpMessageDemultiplexerTest() |
25 : input_msg_(new BlimpMessage), compositor_msg_(new BlimpMessage) {} | 25 : input_msg_(new BlimpMessage), compositor_msg_(new BlimpMessage) {} |
26 | 26 |
27 void SetUp() override { | 27 void SetUp() override { |
28 demux_.AddProcessor(BlimpMessage::INPUT, &receiver1_); | 28 demux_.AddProcessor(BlimpMessage::kInput, &receiver1_); |
29 demux_.AddProcessor(BlimpMessage::COMPOSITOR, &receiver2_); | 29 demux_.AddProcessor(BlimpMessage::kCompositor, &receiver2_); |
30 input_msg_->set_type(BlimpMessage::INPUT); | 30 input_msg_->mutable_input(); |
31 compositor_msg_->set_type(BlimpMessage::COMPOSITOR); | 31 compositor_msg_->mutable_compositor(); |
32 } | 32 } |
33 | 33 |
34 protected: | 34 protected: |
35 std::unique_ptr<BlimpMessage> input_msg_; | 35 std::unique_ptr<BlimpMessage> input_msg_; |
36 std::unique_ptr<BlimpMessage> compositor_msg_; | 36 std::unique_ptr<BlimpMessage> compositor_msg_; |
37 MockBlimpMessageProcessor receiver1_; | 37 MockBlimpMessageProcessor receiver1_; |
38 MockBlimpMessageProcessor receiver2_; | 38 MockBlimpMessageProcessor receiver2_; |
39 net::CompletionCallback captured_cb_; | 39 net::CompletionCallback captured_cb_; |
40 BlimpMessageDemultiplexer demux_; | 40 BlimpMessageDemultiplexer demux_; |
41 }; | 41 }; |
(...skipping 12 matching lines...) Expand all Loading... |
54 .WillOnce(SaveArg<1>(&captured_cb_)); | 54 .WillOnce(SaveArg<1>(&captured_cb_)); |
55 net::TestCompletionCallback cb2; | 55 net::TestCompletionCallback cb2; |
56 demux_.ProcessMessage(std::move(compositor_msg_), cb2.callback()); | 56 demux_.ProcessMessage(std::move(compositor_msg_), cb2.callback()); |
57 captured_cb_.Run(net::ERR_FAILED); | 57 captured_cb_.Run(net::ERR_FAILED); |
58 EXPECT_EQ(net::ERR_FAILED, cb2.WaitForResult()); | 58 EXPECT_EQ(net::ERR_FAILED, cb2.WaitForResult()); |
59 } | 59 } |
60 | 60 |
61 TEST_F(BlimpMessageDemultiplexerTest, ProcessMessageNoRegisteredHandler) { | 61 TEST_F(BlimpMessageDemultiplexerTest, ProcessMessageNoRegisteredHandler) { |
62 net::TestCompletionCallback cb; | 62 net::TestCompletionCallback cb; |
63 std::unique_ptr<BlimpMessage> unknown_message(new BlimpMessage); | 63 std::unique_ptr<BlimpMessage> unknown_message(new BlimpMessage); |
64 unknown_message->set_type(BlimpMessage::UNKNOWN); | |
65 demux_.ProcessMessage(std::move(unknown_message), cb.callback()); | 64 demux_.ProcessMessage(std::move(unknown_message), cb.callback()); |
66 EXPECT_EQ(net::ERR_NOT_IMPLEMENTED, cb.WaitForResult()); | 65 EXPECT_EQ(net::ERR_NOT_IMPLEMENTED, cb.WaitForResult()); |
67 } | 66 } |
68 | 67 |
69 } // namespace blimp | 68 } // namespace blimp |
OLD | NEW |