| Index: device/gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java
|
| diff --git a/device/gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java b/device/gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java
|
| index 199334d9f6061aefab00a0463f68007d5b7aa861..dacaab017fb797ca0dc7e047d99ccf53fb41545e 100644
|
| --- a/device/gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java
|
| +++ b/device/gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java
|
| @@ -62,8 +62,9 @@ public class GamepadMappingsTest {
|
| @Test
|
| @Feature({"Gamepad"})
|
| public void testShieldGamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons,
|
| - GamepadMappings.NVIDIA_SHIELD_DEVICE_NAME_PREFIX);
|
| + GamepadMappings mappings = GamepadMappings.getMappings(
|
| + GamepadMappings.NVIDIA_SHIELD_DEVICE_NAME_PREFIX, null);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| assertShieldGamepadMappings();
|
| }
|
| @@ -71,8 +72,9 @@ public class GamepadMappingsTest {
|
| @Test
|
| @Feature({"Gamepad"})
|
| public void testXBox360GamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons,
|
| - GamepadMappings.MICROSOFT_XBOX_PAD_DEVICE_NAME);
|
| + GamepadMappings mappings = GamepadMappings.getMappings(
|
| + GamepadMappings.MICROSOFT_XBOX_PAD_DEVICE_NAME, null);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| assertShieldGamepadMappings();
|
| }
|
| @@ -80,8 +82,9 @@ public class GamepadMappingsTest {
|
| @Test
|
| @Feature({"Gamepad"})
|
| public void testPS3SixAxisGamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons,
|
| - GamepadMappings.PS3_SIXAXIS_DEVICE_NAME);
|
| + GamepadMappings mappings = GamepadMappings.getMappings(
|
| + GamepadMappings.PS3_SIXAXIS_DEVICE_NAME, null);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.PRIMARY],
|
| mRawButtons[KeyEvent.KEYCODE_BUTTON_X], ERROR_TOLERANCE);
|
| @@ -92,11 +95,11 @@ public class GamepadMappingsTest {
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.QUATERNARY],
|
| mRawButtons[KeyEvent.KEYCODE_BUTTON_B], ERROR_TOLERANCE);
|
|
|
| - assertMappedCommonTriggerButtons();
|
| + assertMappedTriggerButtonsToTopShoulder();
|
| assertMappedCommonThumbstickButtons();
|
| assertMappedCommonDpadButtons();
|
| assertMappedCommonStartSelectMetaButtons();
|
| - assertMappedTriggerAxexToShoulderButtons();
|
| + assertMappedTriggerAxesToBottomShoulder();
|
| assertMappedXYAxes();
|
| assertMappedZAndRZAxesToRightStick();
|
|
|
| @@ -106,11 +109,12 @@ public class GamepadMappingsTest {
|
| @Test
|
| @Feature({"Gamepad"})
|
| public void testSamsungEIGP20GamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons,
|
| - GamepadMappings.SAMSUNG_EI_GP20_DEVICE_NAME);
|
| + GamepadMappings mappings = GamepadMappings.getMappings(
|
| + GamepadMappings.SAMSUNG_EI_GP20_DEVICE_NAME, null);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| assertMappedCommonXYABButtons();
|
| - assertMappedCommonTriggerButtons();
|
| + assertMappedUpperTriggerButtonsToBottomShoulder();
|
| assertMappedCommonThumbstickButtons();
|
| assertMappedCommonStartSelectMetaButtons();
|
| assertMappedHatAxisToDpadButtons();
|
| @@ -124,8 +128,9 @@ public class GamepadMappingsTest {
|
| @Test
|
| @Feature({"Gamepad"})
|
| public void testAmazonFireGamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons,
|
| - GamepadMappings.AMAZON_FIRE_DEVICE_NAME);
|
| + GamepadMappings mappings = GamepadMappings.getMappings(
|
| + GamepadMappings.AMAZON_FIRE_DEVICE_NAME, null);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| assertMappedCommonXYABButtons();
|
| assertMappedPedalAxesToBottomShoulder();
|
| @@ -141,22 +146,116 @@ public class GamepadMappingsTest {
|
|
|
| @Test
|
| @Feature({"Gamepad"})
|
| - public void testUnknownGamepadMappings() throws Exception {
|
| - GamepadMappings.mapToStandardGamepad(
|
| - mMappedAxes, mMappedButtons, mRawAxes, mRawButtons, "");
|
| + public void testUnknownXBox360GamepadMappings() throws Exception {
|
| + int[] axes = new int[] {
|
| + MotionEvent.AXIS_X,
|
| + MotionEvent.AXIS_Y,
|
| + MotionEvent.AXIS_Z,
|
| + MotionEvent.AXIS_RZ,
|
| + MotionEvent.AXIS_LTRIGGER,
|
| + MotionEvent.AXIS_RTRIGGER,
|
| + MotionEvent.AXIS_HAT_X,
|
| + MotionEvent.AXIS_HAT_Y
|
| + };
|
| +
|
| + GamepadMappings mappings = GamepadMappings.getMappings("", axes);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
|
|
| assertMappedCommonXYABButtons();
|
| - assertMappedCommonTriggerButtons();
|
| + assertMappedTriggerButtonsToTopShoulder();
|
| assertMappedCommonThumbstickButtons();
|
| assertMappedCommonStartSelectMetaButtons();
|
| - assertMappedTriggerAxexToShoulderButtons();
|
| - assertMappedCommonDpadButtons();
|
| + assertMappedTriggerAxesToBottomShoulder();
|
| + assertMappedHatAxisToDpadButtons();
|
| + assertMappedXYAxes();
|
| + assertMappedZAndRZAxesToRightStick();
|
| +
|
| + assertMapping();
|
| + }
|
| +
|
| + @Test
|
| + @Feature({"Gamepad"})
|
| + public void testUnknownMogaProGamepadMappings() throws Exception {
|
| + int[] axes = new int[] {
|
| + MotionEvent.AXIS_X,
|
| + MotionEvent.AXIS_Y,
|
| + MotionEvent.AXIS_Z,
|
| + MotionEvent.AXIS_RZ,
|
| + MotionEvent.AXIS_BRAKE,
|
| + MotionEvent.AXIS_GAS,
|
| + MotionEvent.AXIS_HAT_X,
|
| + MotionEvent.AXIS_HAT_Y
|
| + };
|
| +
|
| + GamepadMappings mappings = GamepadMappings.getMappings("", axes);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
| +
|
| + assertMappedCommonXYABButtons();
|
| + assertMappedTriggerButtonsToTopShoulder();
|
| + assertMappedCommonThumbstickButtons();
|
| + assertMappedCommonStartSelectMetaButtons();
|
| + assertMappedPedalAxesToBottomShoulder();
|
| + assertMappedHatAxisToDpadButtons();
|
| + assertMappedXYAxes();
|
| + assertMappedZAndRZAxesToRightStick();
|
| +
|
| + assertMapping();
|
| + }
|
| +
|
| + @Test
|
| + @Feature({"Gamepad"})
|
| + public void testUnknownXiaomiGamepadMappings() throws Exception {
|
| + int[] axes = new int[] {
|
| + MotionEvent.AXIS_X,
|
| + MotionEvent.AXIS_Y,
|
| + MotionEvent.AXIS_RX,
|
| + MotionEvent.AXIS_RY,
|
| + MotionEvent.AXIS_BRAKE,
|
| + MotionEvent.AXIS_THROTTLE,
|
| + MotionEvent.AXIS_HAT_X,
|
| + MotionEvent.AXIS_HAT_Y
|
| + };
|
| +
|
| + GamepadMappings mappings = GamepadMappings.getMappings("", axes);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
| +
|
| + assertMappedCommonXYABButtons();
|
| + assertMappedTriggerButtonsToTopShoulder();
|
| + assertMappedCommonThumbstickButtons();
|
| + assertMappedCommonStartSelectMetaButtons();
|
| + assertMappedAltPedalAxesToBottomShoulder();
|
| + assertMappedHatAxisToDpadButtons();
|
| assertMappedXYAxes();
|
| assertMappedRXAndRYAxesToRightStick();
|
|
|
| assertMapping();
|
| }
|
|
|
| + @Test
|
| + @Feature({"Gamepad"})
|
| + public void testUnknownGpdXdGamepadMappings() throws Exception {
|
| + int[] axes = new int[] {
|
| + MotionEvent.AXIS_X,
|
| + MotionEvent.AXIS_Y,
|
| + MotionEvent.AXIS_Z,
|
| + MotionEvent.AXIS_RZ
|
| + };
|
| +
|
| + GamepadMappings mappings = GamepadMappings.getMappings("", axes);
|
| + mappings.mapToStandardGamepad(mMappedAxes, mMappedButtons, mRawAxes, mRawButtons);
|
| +
|
| + assertMappedCommonXYABButtons();
|
| + assertMappedTriggerButtonsToTopShoulder();
|
| + assertMappedCommonThumbstickButtons();
|
| + assertMappedCommonStartSelectMetaButtons();
|
| + assertMappedLowerTriggerButtonsToBottomShoulder();
|
| + assertMappedCommonDpadButtons();
|
| + assertMappedXYAxes();
|
| + assertMappedZAndRZAxesToRightStick();
|
| +
|
| + assertMapping();
|
| + }
|
| +
|
| /**
|
| * Asserts that the current gamepad mapping being tested matches the shield mappings.
|
| */
|
| @@ -199,13 +298,20 @@ public class GamepadMappingsTest {
|
| }
|
| }
|
|
|
| - private void assertMappedCommonTriggerButtons() {
|
| + private void assertMappedUpperTriggerButtonsToBottomShoulder() {
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_TRIGGER],
|
| mRawButtons[KeyEvent.KEYCODE_BUTTON_L1], ERROR_TOLERANCE);
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.RIGHT_TRIGGER],
|
| mRawButtons[KeyEvent.KEYCODE_BUTTON_R1], ERROR_TOLERANCE);
|
| }
|
|
|
| + private void assertMappedLowerTriggerButtonsToBottomShoulder() {
|
| + Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_TRIGGER],
|
| + mRawButtons[KeyEvent.KEYCODE_BUTTON_L2], ERROR_TOLERANCE);
|
| + Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.RIGHT_TRIGGER],
|
| + mRawButtons[KeyEvent.KEYCODE_BUTTON_R2], ERROR_TOLERANCE);
|
| + }
|
| +
|
| private void assertMappedCommonDpadButtons() {
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.DPAD_DOWN],
|
| mRawButtons[KeyEvent.KEYCODE_DPAD_DOWN], ERROR_TOLERANCE);
|
| @@ -217,13 +323,6 @@ public class GamepadMappingsTest {
|
| mRawButtons[KeyEvent.KEYCODE_DPAD_RIGHT], ERROR_TOLERANCE);
|
| }
|
|
|
| - private void assertMappedTriggerAxexToShoulderButtons() {
|
| - Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_SHOULDER],
|
| - mRawAxes[MotionEvent.AXIS_LTRIGGER], ERROR_TOLERANCE);
|
| - Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.RIGHT_SHOULDER],
|
| - mRawAxes[MotionEvent.AXIS_RTRIGGER], ERROR_TOLERANCE);
|
| - }
|
| -
|
| private void assertMappedTriggerButtonsToTopShoulder() {
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_SHOULDER],
|
| mRawButtons[KeyEvent.KEYCODE_BUTTON_L1], ERROR_TOLERANCE);
|
| @@ -265,6 +364,13 @@ public class GamepadMappingsTest {
|
| mRawAxes[MotionEvent.AXIS_GAS], ERROR_TOLERANCE);
|
| }
|
|
|
| + private void assertMappedAltPedalAxesToBottomShoulder() {
|
| + Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_TRIGGER],
|
| + mRawAxes[MotionEvent.AXIS_BRAKE], ERROR_TOLERANCE);
|
| + Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.RIGHT_TRIGGER],
|
| + mRawAxes[MotionEvent.AXIS_THROTTLE], ERROR_TOLERANCE);
|
| + }
|
| +
|
| private void assertMappedTriggerAxesToBottomShoulder() {
|
| Assert.assertEquals(mMappedButtons[CanonicalButtonIndex.LEFT_TRIGGER],
|
| mRawAxes[MotionEvent.AXIS_LTRIGGER], ERROR_TOLERANCE);
|
|
|