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

Unified Diff: device/vr/vr_device_manager_unittest.cc

Issue 2453973002: WIP WebVR mojo refactor (Closed)
Patch Set: Fixed crash. VR data doesn't seem to be polling correctly, though. 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « device/vr/vr_device_manager.cc ('k') | device/vr/vr_device_provider.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: device/vr/vr_device_manager_unittest.cc
diff --git a/device/vr/vr_device_manager_unittest.cc b/device/vr/vr_device_manager_unittest.cc
index 454f6c4b41fb0ab3a99e37cbc5dab326909f4fee..4dac04b059ed79449b177889bd6a79d6ee296477 100644
--- a/device/vr/vr_device_manager_unittest.cc
+++ b/device/vr/vr_device_manager_unittest.cc
@@ -32,6 +32,7 @@ class VRDeviceManagerTest : public testing::Test {
protected:
FakeVRDeviceProvider* provider_;
std::unique_ptr<VRDeviceManager> device_manager_;
+ std::unique_ptr<VRServiceImpl> vr_service_;
DISALLOW_COPY_AND_ASSIGN(VRDeviceManagerTest);
};
@@ -44,6 +45,7 @@ void VRDeviceManagerTest::SetUp() {
std::unique_ptr<FakeVRDeviceProvider> provider(new FakeVRDeviceProvider());
provider_ = provider.get();
device_manager_.reset(new VRDeviceManager(std::move(provider)));
+ vr_service_.reset(new VRServiceImpl());
}
TEST_F(VRDeviceManagerTest, InitializationTest) {
@@ -53,18 +55,15 @@ TEST_F(VRDeviceManagerTest, InitializationTest) {
// initialized yet or the providesr have been released.
// The mojom::VRService should initialize each of it's providers upon it's own
// initialization.
- mojo::Array<VRDisplayPtr> webvr_devices;
- webvr_devices = device_manager_->GetVRDevices();
+ device_manager_->GetVRDevices(vr_service_.get());
EXPECT_TRUE(provider_->IsInitialized());
}
TEST_F(VRDeviceManagerTest, GetDevicesBasicTest) {
- mojo::Array<VRDisplayPtr> webvr_devices;
- webvr_devices = device_manager_->GetVRDevices();
+ bool success = device_manager_->GetVRDevices(vr_service_.get());
// Calling GetVRDevices should initialize the providers.
EXPECT_TRUE(provider_->IsInitialized());
- // Should successfully return zero devices when none are available.
- EXPECT_EQ(0u, webvr_devices.size());
+ EXPECT_FALSE(success);
// GetDeviceByIndex should return nullptr if an invalid index in queried.
VRDevice* queried_device = GetDevice(1);
@@ -72,31 +71,38 @@ TEST_F(VRDeviceManagerTest, GetDevicesBasicTest) {
std::unique_ptr<FakeVRDevice> device1(new FakeVRDevice(provider_));
provider_->AddDevice(device1.get());
- webvr_devices = device_manager_->GetVRDevices();
+ success = device_manager_->GetVRDevices(vr_service_.get());
+ EXPECT_TRUE(success);
// Should have successfully returned one device.
- EXPECT_EQ(1u, webvr_devices.size());
- // The WebVRDevice index should match the device id.
- EXPECT_EQ(webvr_devices[0]->index, device1->id());
+ EXPECT_EQ(device1.get(), GetDevice(device1->id()));
+ queried_device = GetDevice(device1->id());
+ EXPECT_EQ(1u, device1->UpdatedNum());
+ EXPECT_TRUE(device1->IsDeviceRegistered());
std::unique_ptr<FakeVRDevice> device2(new FakeVRDevice(provider_));
provider_->AddDevice(device2.get());
- webvr_devices = device_manager_->GetVRDevices();
- // Should have successfully returned two devices.
- EXPECT_EQ(2u, webvr_devices.size());
- // NOTE: Returned WebVRDevices are not required to be in any particular order.
+ success = device_manager_->GetVRDevices(vr_service_.get());
+ EXPECT_TRUE(success);
// Querying the WebVRDevice index should return the correct device.
- queried_device = GetDevice(device1->id());
- EXPECT_EQ(device1.get(), queried_device);
- queried_device = GetDevice(device2->id());
- EXPECT_EQ(device2.get(), queried_device);
+ VRDevice* queried_device1 = GetDevice(device1->id());
+ EXPECT_EQ(device1.get(), queried_device1);
+ VRDevice* queried_device2 = GetDevice(device2->id());
+ EXPECT_EQ(device2.get(), queried_device2);
+
+ EXPECT_EQ(2u, device1->UpdatedNum());
+ EXPECT_TRUE(device1->IsDeviceRegistered());
+ EXPECT_EQ(1u, device2->UpdatedNum());
+ EXPECT_TRUE(device2->IsDeviceRegistered());
provider_->RemoveDevice(device1.get());
- webvr_devices = device_manager_->GetVRDevices();
- // Should have successfully returned one device.
- EXPECT_EQ(1u, webvr_devices.size());
- // The WebVRDevice index should match the only remaining device id.
- EXPECT_EQ(webvr_devices[0]->index, device2->id());
+ success = device_manager_->GetVRDevices(vr_service_.get());
+ EXPECT_TRUE(success);
+
+ EXPECT_EQ(2u, device1->UpdatedNum());
+ EXPECT_FALSE(device1->IsDeviceRegistered());
+ EXPECT_EQ(2u, device2->UpdatedNum());
+ EXPECT_TRUE(device2->IsDeviceRegistered());
}
} // namespace device
« no previous file with comments | « device/vr/vr_device_manager.cc ('k') | device/vr/vr_device_provider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698