OLD | NEW |
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 #include <queue> | 5 #include <queue> |
6 | 6 |
7 #include "device/serial/data_source_sender.h" | 7 #include "device/serial/data_source_sender.h" |
8 #include "device/serial/data_stream.mojom.h" | 8 #include "device/serial/data_stream.mojom.h" |
9 #include "extensions/renderer/api_test_base.h" | 9 #include "extensions/renderer/api_test_base.h" |
10 #include "grit/extensions_renderer_resources.h" | 10 #include "grit/extensions_renderer_resources.h" |
11 | 11 |
12 namespace extensions { | 12 namespace extensions { |
13 | 13 |
14 // Runs tests defined in extensions/test/data/data_receiver_unittest.js | 14 // Runs tests defined in extensions/test/data/data_receiver_unittest.js |
15 class DataReceiverTest : public ApiTestBase { | 15 class DataReceiverTest : public ApiTestBase { |
16 public: | 16 public: |
17 DataReceiverTest() {} | 17 DataReceiverTest() {} |
18 | 18 |
19 virtual void SetUp() OVERRIDE { | 19 virtual void SetUp() OVERRIDE { |
20 ApiTestBase::SetUp(); | 20 ApiTestBase::SetUp(); |
21 env()->RegisterModule("async_waiter", IDR_ASYNC_WAITER_JS); | 21 env()->RegisterModule("async_waiter", IDR_ASYNC_WAITER_JS); |
22 env()->RegisterModule("data_receiver", IDR_DATA_RECEIVER_JS); | 22 env()->RegisterModule("data_receiver", IDR_DATA_RECEIVER_JS); |
23 env()->RegisterModule("device/serial/data_stream.mojom", | 23 env()->RegisterModule("device/serial/data_stream.mojom", |
24 IDR_DATA_STREAM_MOJOM_JS); | 24 IDR_DATA_STREAM_MOJOM_JS); |
| 25 env()->RegisterModule("device/serial/data_stream_serialization.mojom", |
| 26 IDR_DATA_STREAM_SERIALIZATION_MOJOM_JS); |
25 service_provider()->AddService(base::Bind( | 27 service_provider()->AddService(base::Bind( |
26 &DataReceiverTest::CreateDataSource, base::Unretained(this))); | 28 &DataReceiverTest::CreateDataSource, base::Unretained(this))); |
27 } | 29 } |
28 | 30 |
29 virtual void TearDown() OVERRIDE { | 31 virtual void TearDown() OVERRIDE { |
30 if (sender_.get()) { | 32 if (sender_.get()) { |
31 sender_->ShutDown(); | 33 sender_->ShutDown(); |
32 sender_ = NULL; | 34 sender_ = NULL; |
33 } | 35 } |
34 ApiTestBase::TearDown(); | 36 ApiTestBase::TearDown(); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 RunTest("data_receiver_unittest.js", "testReceiveDataAndError"); | 98 RunTest("data_receiver_unittest.js", "testReceiveDataAndError"); |
97 } | 99 } |
98 | 100 |
99 TEST_F(DataReceiverTest, ReceiveErrorThenData) { | 101 TEST_F(DataReceiverTest, ReceiveErrorThenData) { |
100 data_to_send_.push(""); | 102 data_to_send_.push(""); |
101 data_to_send_.push("a"); | 103 data_to_send_.push("a"); |
102 error_to_send_.push(1); | 104 error_to_send_.push(1); |
103 RunTest("data_receiver_unittest.js", "testReceiveErrorThenData"); | 105 RunTest("data_receiver_unittest.js", "testReceiveErrorThenData"); |
104 } | 106 } |
105 | 107 |
| 108 TEST_F(DataReceiverTest, ReceiveWithSerialization) { |
| 109 data_to_send_.push("a"); |
| 110 data_to_send_.push("b"); |
| 111 RunTest("data_receiver_unittest.js", "testReceiveWithSerialization"); |
| 112 } |
| 113 |
| 114 TEST_F(DataReceiverTest, ReceiveErrorWithSerialization) { |
| 115 error_to_send_.push(1); |
| 116 error_to_send_.push(3); |
| 117 RunTest("data_receiver_unittest.js", "testReceiveErrorWithSerialization"); |
| 118 } |
| 119 |
| 120 TEST_F(DataReceiverTest, ReceiveDataAndErrorWithSerialization) { |
| 121 data_to_send_.push("a"); |
| 122 data_to_send_.push("b"); |
| 123 data_to_send_.push("c"); |
| 124 error_to_send_.push(1); |
| 125 error_to_send_.push(3); |
| 126 RunTest("data_receiver_unittest.js", |
| 127 "testReceiveDataAndErrorWithSerialization"); |
| 128 } |
| 129 |
| 130 TEST_F(DataReceiverTest, ReceiveErrorThenDataWithSerialization) { |
| 131 data_to_send_.push(""); |
| 132 data_to_send_.push("a"); |
| 133 error_to_send_.push(1); |
| 134 RunTest("data_receiver_unittest.js", |
| 135 "testReceiveErrorThenDataWithSerialization"); |
| 136 } |
| 137 |
| 138 TEST_F(DataReceiverTest, SerializeDuringReceive) { |
| 139 data_to_send_.push("a"); |
| 140 RunTest("data_receiver_unittest.js", "testSerializeDuringReceive"); |
| 141 } |
| 142 |
| 143 TEST_F(DataReceiverTest, SerializeAfterClose) { |
| 144 data_to_send_.push("a"); |
| 145 RunTest("data_receiver_unittest.js", "testSerializeAfterClose"); |
| 146 } |
| 147 |
106 TEST_F(DataReceiverTest, SourceShutdown) { | 148 TEST_F(DataReceiverTest, SourceShutdown) { |
107 error_to_send_.push(2); | 149 error_to_send_.push(2); |
108 RunTest("data_receiver_unittest.js", "testSourceShutdown"); | 150 RunTest("data_receiver_unittest.js", "testSourceShutdown"); |
109 } | 151 } |
110 | 152 |
111 } // namespace extensions | 153 } // namespace extensions |
OLD | NEW |