| Index: content/browser/device_sensors/sensor_manager_chromeos_unittest.cc
|
| diff --git a/content/browser/device_sensors/sensor_manager_chromeos_unittest.cc b/content/browser/device_sensors/sensor_manager_chromeos_unittest.cc
|
| deleted file mode 100644
|
| index 7a15eb81ce449ebe2d4a93181c2b9d274982f4c4..0000000000000000000000000000000000000000
|
| --- a/content/browser/device_sensors/sensor_manager_chromeos_unittest.cc
|
| +++ /dev/null
|
| @@ -1,229 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "content/browser/device_sensors/sensor_manager_chromeos.h"
|
| -
|
| -#include <memory>
|
| -
|
| -#include "base/macros.h"
|
| -#include "chromeos/accelerometer/accelerometer_types.h"
|
| -#include "device/sensors/public/cpp/device_motion_hardware_buffer.h"
|
| -#include "device/sensors/public/cpp/device_orientation_hardware_buffer.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace {
|
| -
|
| -const double kMeanGravity = -9.80665;
|
| -
|
| -// Isolated content::SensorManagerChromeOS from the active
|
| -// chromeos::AccelerometerReader. This allows for direct control over which
|
| -// accelerometer events are provided to the sensor manager.
|
| -class TestSensorManagerChromeOS : public content::SensorManagerChromeOS {
|
| - public:
|
| - TestSensorManagerChromeOS() {}
|
| - ~TestSensorManagerChromeOS() override {};
|
| -
|
| - protected:
|
| - void StartObservingAccelerometer() override {}
|
| - void StopObservingAccelerometer() override {}
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(TestSensorManagerChromeOS);
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -namespace content {
|
| -
|
| -class SensorManagerChromeOSTest : public testing::Test {
|
| - public:
|
| - SensorManagerChromeOSTest() {
|
| - motion_buffer_.reset(new DeviceMotionHardwareBuffer);
|
| - orientation_buffer_.reset(new DeviceOrientationHardwareBuffer);
|
| - }
|
| -
|
| - ~SensorManagerChromeOSTest() override {}
|
| -
|
| - void OnAccelerationIncludingGravity(double x, double y, double z) {
|
| - scoped_refptr<chromeos::AccelerometerUpdate> update(
|
| - new chromeos::AccelerometerUpdate());
|
| - update->Set(chromeos::ACCELEROMETER_SOURCE_SCREEN, x, y, z);
|
| - sensor_manager_->OnAccelerometerUpdated(update);
|
| - }
|
| -
|
| - DeviceMotionHardwareBuffer* motion_buffer() { return motion_buffer_.get(); }
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation_buffer() {
|
| - return orientation_buffer_.get();
|
| - }
|
| -
|
| - SensorManagerChromeOS* sensor_manager() { return sensor_manager_.get(); }
|
| -
|
| - // testing::Test:
|
| - void SetUp() override {
|
| - testing::Test::SetUp();
|
| - sensor_manager_.reset(new TestSensorManagerChromeOS);
|
| - sensor_manager_->StartFetchingDeviceMotionData(motion_buffer_.get());
|
| - sensor_manager_->StartFetchingDeviceOrientationData(
|
| - orientation_buffer_.get());
|
| - }
|
| -
|
| - void TearDown() override {
|
| - sensor_manager_->StopFetchingDeviceMotionData();
|
| - sensor_manager_->StopFetchingDeviceOrientationData();
|
| - testing::Test::TearDown();
|
| - }
|
| -
|
| - private:
|
| - std::unique_ptr<TestSensorManagerChromeOS> sensor_manager_;
|
| - std::unique_ptr<DeviceMotionHardwareBuffer> motion_buffer_;
|
| - std::unique_ptr<DeviceOrientationHardwareBuffer> orientation_buffer_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(SensorManagerChromeOSTest);
|
| -};
|
| -
|
| -// Tests that starting to process motion data will update the associated buffer.
|
| -TEST_F(SensorManagerChromeOSTest, MotionBuffer) {
|
| - DeviceMotionHardwareBuffer* buffer = motion_buffer();
|
| - EXPECT_FLOAT_EQ(100.0f, buffer->data.interval);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationIncludingGravityX);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationIncludingGravityY);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationIncludingGravityZ);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationX);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationY);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationZ);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateAlpha);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateBeta);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateGamma);
|
| -
|
| - OnAccelerationIncludingGravity(0.0f, 0.0f, 1.0f);
|
| - EXPECT_TRUE(buffer->data.hasAccelerationIncludingGravityX);
|
| - EXPECT_TRUE(buffer->data.hasAccelerationIncludingGravityY);
|
| - EXPECT_TRUE(buffer->data.hasAccelerationIncludingGravityZ);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationX);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationY);
|
| - EXPECT_FALSE(buffer->data.hasAccelerationZ);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateAlpha);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateBeta);
|
| - EXPECT_FALSE(buffer->data.hasRotationRateGamma);
|
| - EXPECT_TRUE(buffer->data.allAvailableSensorsAreActive);
|
| -
|
| - sensor_manager()->StopFetchingDeviceMotionData();
|
| - EXPECT_FALSE(buffer->data.allAvailableSensorsAreActive);
|
| -}
|
| -
|
| -// Tests that starting to process orientation data will update the associated
|
| -// buffer.
|
| -TEST_F(SensorManagerChromeOSTest, OrientationBuffer) {
|
| - DeviceOrientationHardwareBuffer* buffer = orientation_buffer();
|
| - EXPECT_FALSE(buffer->data.hasAlpha);
|
| - EXPECT_FALSE(buffer->data.hasBeta);
|
| - EXPECT_FALSE(buffer->data.hasGamma);
|
| - EXPECT_FALSE(buffer->data.allAvailableSensorsAreActive);
|
| -
|
| - OnAccelerationIncludingGravity(0.0f, 0.0f, 1.0f);
|
| - EXPECT_FLOAT_EQ(0.0f, buffer->data.alpha);
|
| - EXPECT_FALSE(buffer->data.hasAlpha);
|
| - EXPECT_TRUE(buffer->data.hasBeta);
|
| - EXPECT_TRUE(buffer->data.hasGamma);
|
| - EXPECT_TRUE(buffer->data.allAvailableSensorsAreActive);
|
| -
|
| - sensor_manager()->StopFetchingDeviceOrientationData();
|
| - EXPECT_FALSE(buffer->data.allAvailableSensorsAreActive);
|
| -}
|
| -
|
| -// Tests a device resting flat.
|
| -TEST_F(SensorManagerChromeOSTest, NeutralOrientation) {
|
| - OnAccelerationIncludingGravity(0.0f, 0.0f, -kMeanGravity);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(-kMeanGravity, motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -// Tests an upside-down device, such that the W3C boundary [-180,180) causes the
|
| -// beta value to become negative.
|
| -TEST_F(SensorManagerChromeOSTest, UpsideDown) {
|
| - OnAccelerationIncludingGravity(0.0f, 0.0f, kMeanGravity);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(kMeanGravity, motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(-180.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -// Tests for positive beta value before the device is completely upside-down
|
| -TEST_F(SensorManagerChromeOSTest, BeforeUpsideDownBoundary) {
|
| - OnAccelerationIncludingGravity(0.0f, -kMeanGravity / 2.0f,
|
| - kMeanGravity / 2.0f);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(-kMeanGravity / 2.0f,
|
| - motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(kMeanGravity / 2.0f,
|
| - motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(135.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -// Tests a device lying on its left-edge.
|
| -TEST_F(SensorManagerChromeOSTest, LeftEdge) {
|
| - OnAccelerationIncludingGravity(-kMeanGravity, 0.0f, 0.0f);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(-kMeanGravity, motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(-90.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -// Tests a device lying on its right-edge, such that the W3C boundary [-90,90)
|
| -// causes the gamma value to become negative.
|
| -TEST_F(SensorManagerChromeOSTest, RightEdge) {
|
| - OnAccelerationIncludingGravity(kMeanGravity, 0.0f, 0.0f);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(kMeanGravity, motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(-90.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -// Tests for positive gamma value before the device is completely on its right
|
| -// side.
|
| -TEST_F(SensorManagerChromeOSTest, BeforeRightEdgeBoundary) {
|
| - OnAccelerationIncludingGravity(kMeanGravity / 2.0f, 0.0f,
|
| - -kMeanGravity / 2.0f);
|
| -
|
| - DeviceMotionHardwareBuffer* motion = motion_buffer();
|
| - EXPECT_FLOAT_EQ(kMeanGravity / 2.0f,
|
| - motion->data.accelerationIncludingGravityX);
|
| - EXPECT_FLOAT_EQ(0.0f, motion->data.accelerationIncludingGravityY);
|
| - EXPECT_FLOAT_EQ(-kMeanGravity / 2.0f,
|
| - motion->data.accelerationIncludingGravityZ);
|
| -
|
| - DeviceOrientationHardwareBuffer* orientation = orientation_buffer();
|
| - EXPECT_FLOAT_EQ(0.0f, orientation->data.beta);
|
| - EXPECT_FLOAT_EQ(45.0f, orientation->data.gamma);
|
| -}
|
| -
|
| -} // namespace content
|
|
|