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 "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/macros.h" | 6 #include "base/macros.h" |
7 #include "base/synchronization/waitable_event.h" | 7 #include "base/synchronization/waitable_event.h" |
8 #include "base/threading/platform_thread.h" | 8 #include "base/threading/platform_thread.h" |
9 #include "content/browser/device_sensors/data_fetcher_shared_memory.h" | 9 #include "content/browser/device_sensors/data_fetcher_shared_memory.h" |
10 #include "content/browser/device_sensors/device_inertial_sensor_service.h" | 10 #include "content/browser/device_sensors/device_inertial_sensor_service.h" |
(...skipping 10 matching lines...) Expand all Loading... |
21 #include "content/shell/browser/shell.h" | 21 #include "content/shell/browser/shell.h" |
22 #include "content/shell/browser/shell_javascript_dialog_manager.h" | 22 #include "content/shell/browser/shell_javascript_dialog_manager.h" |
23 | 23 |
24 namespace content { | 24 namespace content { |
25 | 25 |
26 namespace { | 26 namespace { |
27 | 27 |
28 class FakeDataFetcher : public DataFetcherSharedMemory { | 28 class FakeDataFetcher : public DataFetcherSharedMemory { |
29 public: | 29 public: |
30 FakeDataFetcher() | 30 FakeDataFetcher() |
31 : started_orientation_(false, false), | 31 : started_orientation_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
32 stopped_orientation_(false, false), | 32 base::WaitableEvent::InitialState::NOT_SIGNALED), |
33 started_motion_(false, false), | 33 stopped_orientation_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
34 stopped_motion_(false, false), | 34 base::WaitableEvent::InitialState::NOT_SIGNALED), |
35 started_light_(false, false), | 35 started_motion_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
36 stopped_light_(false, false), | 36 base::WaitableEvent::InitialState::NOT_SIGNALED), |
| 37 stopped_motion_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
| 38 base::WaitableEvent::InitialState::NOT_SIGNALED), |
| 39 started_light_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
| 40 base::WaitableEvent::InitialState::NOT_SIGNALED), |
| 41 stopped_light_(base::WaitableEvent::ResetPolicy::AUTOMATIC, |
| 42 base::WaitableEvent::InitialState::NOT_SIGNALED), |
37 sensor_data_available_(true) {} | 43 sensor_data_available_(true) {} |
38 ~FakeDataFetcher() override {} | 44 ~FakeDataFetcher() override {} |
39 | 45 |
40 bool Start(ConsumerType consumer_type, void* buffer) override { | 46 bool Start(ConsumerType consumer_type, void* buffer) override { |
41 EXPECT_TRUE(buffer); | 47 EXPECT_TRUE(buffer); |
42 | 48 |
43 switch (consumer_type) { | 49 switch (consumer_type) { |
44 case CONSUMER_TYPE_MOTION: | 50 case CONSUMER_TYPE_MOTION: |
45 { | 51 { |
46 DeviceMotionHardwareBuffer* motion_buffer = | 52 DeviceMotionHardwareBuffer* motion_buffer = |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 bool sensor_data_available_; | 178 bool sensor_data_available_; |
173 | 179 |
174 private: | 180 private: |
175 DISALLOW_COPY_AND_ASSIGN(FakeDataFetcher); | 181 DISALLOW_COPY_AND_ASSIGN(FakeDataFetcher); |
176 }; | 182 }; |
177 | 183 |
178 | 184 |
179 class DeviceInertialSensorBrowserTest : public ContentBrowserTest { | 185 class DeviceInertialSensorBrowserTest : public ContentBrowserTest { |
180 public: | 186 public: |
181 DeviceInertialSensorBrowserTest() | 187 DeviceInertialSensorBrowserTest() |
182 : fetcher_(nullptr), io_loop_finished_event_(false, false) {} | 188 : fetcher_(nullptr), |
| 189 io_loop_finished_event_( |
| 190 base::WaitableEvent::ResetPolicy::AUTOMATIC, |
| 191 base::WaitableEvent::InitialState::NOT_SIGNALED) {} |
183 | 192 |
184 void SetUpOnMainThread() override { | 193 void SetUpOnMainThread() override { |
185 BrowserThread::PostTask( | 194 BrowserThread::PostTask( |
186 BrowserThread::IO, FROM_HERE, | 195 BrowserThread::IO, FROM_HERE, |
187 base::Bind(&DeviceInertialSensorBrowserTest::SetUpOnIOThread, this)); | 196 base::Bind(&DeviceInertialSensorBrowserTest::SetUpOnIOThread, this)); |
188 io_loop_finished_event_.Wait(); | 197 io_loop_finished_event_.Wait(); |
189 } | 198 } |
190 | 199 |
191 void SetUpOnIOThread() { | 200 void SetUpOnIOThread() { |
192 fetcher_ = new FakeDataFetcher(); | 201 fetcher_ = new FakeDataFetcher(); |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
328 fetcher_->stopped_motion_.Wait(); | 337 fetcher_->stopped_motion_.Wait(); |
329 fetcher_->started_orientation_.Wait(); | 338 fetcher_->started_orientation_.Wait(); |
330 fetcher_->stopped_orientation_.Wait(); | 339 fetcher_->stopped_orientation_.Wait(); |
331 same_tab_observer.Wait(); | 340 same_tab_observer.Wait(); |
332 EXPECT_EQ("pass", shell()->web_contents()->GetLastCommittedURL().ref()); | 341 EXPECT_EQ("pass", shell()->web_contents()->GetLastCommittedURL().ref()); |
333 } | 342 } |
334 | 343 |
335 } // namespace | 344 } // namespace |
336 | 345 |
337 } // namespace content | 346 } // namespace content |
OLD | NEW |