Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 72a5a8b3 authored by Felipe Leme's avatar Felipe Leme
Browse files

Improved KeyEventTest.

- Added tests for all constructors.
- Fixed some assertion error messages.

Test: atest android.view.KeyEventTest
Bug: 268103680
Change-Id: I99c9b30e027c97f571192918777a68ff7a755776
parent a15206b9
Loading
Loading
Loading
Loading
+40 −10
Original line number Diff line number Diff line
@@ -43,9 +43,12 @@ public final class KeyEventTest {

    private static final int DOWN_TIME = 50;
    private static final long EVENT_TIME = 100;
    private static final long ANOTHER_EVENT_TIME = 108;
    private static final int ACTION = KeyEvent.ACTION_DOWN;
    private static final int ANOTHER_ACTION = KeyEvent.ACTION_UP;
    private static final int KEYCODE = KeyEvent.KEYCODE_0;
    private static final int REPEAT = 0;
    private static final int ANOTHER_REPEAT = 42;
    private static final int METASTATE = 0;
    private static final int DEVICE_ID = 0;
    private static final int SCAN_CODE = 0;
@@ -155,6 +158,20 @@ public final class KeyEventTest {
        compareKeys(key1, key2);
    }

    @Test
    public void testCopyConstructorWith2ChangedFields() {
        KeyEvent key1 = createKey();
        @SuppressWarnings("deprecation")
        KeyEvent key2 = new KeyEvent(key1, ANOTHER_EVENT_TIME, ANOTHER_REPEAT);


        assertKeyEventFields(key2, DOWN_TIME, ANOTHER_EVENT_TIME, ACTION, KEYCODE, ANOTHER_REPEAT,
                METASTATE, DEVICE_ID, SCAN_CODE, FLAGS, InputDevice.SOURCE_KEYBOARD,
                INVALID_DISPLAY, CHARACTERS);
        expect.withMessage("id (key1=%s, key2=%s", key1, key2).that(key2.getId())
                .isNotEqualTo(key1.getId());
    }

    @Test
    public void testConstructorWith10Args() {
        KeyEvent key = new KeyEvent(DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT, METASTATE,
@@ -188,7 +205,7 @@ public final class KeyEventTest {
        KeyEvent key = new KeyEvent(DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT, METASTATE);

        assertKeyEventFields(key, DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT, METASTATE,
                KeyCharacterMap.VIRTUAL_KEYBOARD, /* scanCode= */ 0, /* flags= */ 0,
                /* deviceId= */ KeyCharacterMap.VIRTUAL_KEYBOARD, /* scanCode= */ 0, /* flags= */ 0,
                /* source= */ 0, INVALID_DISPLAY, CHARACTERS);
    }

@@ -197,8 +214,8 @@ public final class KeyEventTest {
        KeyEvent key = new KeyEvent(DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT);

        assertKeyEventFields(key, DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT,
                /* metaState= */ 0, KeyCharacterMap.VIRTUAL_KEYBOARD, /* scanCode= */ 0,
                /* flags= */ 0, /* source= */ 0, INVALID_DISPLAY, CHARACTERS);
                /* metaState= */ 0, /* deviceId= */ KeyCharacterMap.VIRTUAL_KEYBOARD,
                /* scanCode= */ 0, /* flags= */ 0, /* source= */ 0, INVALID_DISPLAY, CHARACTERS);
    }

    @Test
@@ -211,17 +228,30 @@ public final class KeyEventTest {
    }

    @Test
    public void testConstructorWith2rgs() {
    public void testConstructorWith2Args() {
        KeyEvent key = new KeyEvent(ACTION, KEYCODE);

        assertKeyEventFields(key, /* downTime= */ 0, /* eventTime= */ 0, ACTION, KEYCODE,
                /* repeat= */ 0, /* metaState= */ 0, KeyCharacterMap.VIRTUAL_KEYBOARD,
                /* scanCode= */ 0, FLAGS, /* source= */ 0, INVALID_DISPLAY, CHARACTERS);
                /* repeat= */ 0, /* metaState= */ 0,
                /* deviceId= */ KeyCharacterMap.VIRTUAL_KEYBOARD, /* scanCode= */ 0, FLAGS,
                /* source= */ 0, INVALID_DISPLAY, CHARACTERS);
    }

    @Test
    public void testCopyChangeAction() {
        KeyEvent key1 = createKey();
        KeyEvent key2 = KeyEvent.changeAction(key1, ANOTHER_ACTION);

        assertKeyEventFields(key2, DOWN_TIME, EVENT_TIME, ANOTHER_ACTION, KEYCODE, REPEAT,
                METASTATE, DEVICE_ID, SCAN_CODE, FLAGS, InputDevice.SOURCE_KEYBOARD,
                INVALID_DISPLAY, CHARACTERS);
        expect.withMessage("id (key1=%s, key2=%s", key1, key2).that(key2.getId())
                .isNotEqualTo(key1.getId());
    }

    private static KeyEvent createKey() {
        return KeyEvent.obtain(DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT, METASTATE,
                DEVICE_ID, SCAN_CODE, FLAGS, SOURCE, INVALID_DISPLAY, CHARACTERS);
        return KeyEvent.obtain(DOWN_TIME, EVENT_TIME, ACTION, KEYCODE, REPEAT, METASTATE, DEVICE_ID,
                SCAN_CODE, FLAGS, SOURCE, INVALID_DISPLAY, CHARACTERS);
    }

    private void compareKeys(KeyEvent key1, KeyEvent key2) {