diff --git a/core/java/android/view/textclassifier/SelectionEvent.java b/core/java/android/view/textclassifier/SelectionEvent.java index ceab78addac93..b07359697063a 100644 --- a/core/java/android/view/textclassifier/SelectionEvent.java +++ b/core/java/android/view/textclassifier/SelectionEvent.java @@ -348,6 +348,7 @@ public final class SelectionEvent implements Parcelable { case SelectionEvent.ACTION_ABANDON: // fall through case SelectionEvent.ACTION_SELECT_ALL: // fall through case SelectionEvent.ACTION_RESET: // fall through + case SelectionEvent.ACTION_OTHER: // fall through return; default: throw new IllegalArgumentException( @@ -653,4 +654,4 @@ public final class SelectionEvent implements Parcelable { return new SelectionEvent[size]; } }; -} \ No newline at end of file +} diff --git a/core/tests/coretests/src/android/view/textclassifier/SelectionEventTest.java b/core/tests/coretests/src/android/view/textclassifier/SelectionEventTest.java index 3e4c85f9d2178..a3c6179792b1a 100644 --- a/core/tests/coretests/src/android/view/textclassifier/SelectionEventTest.java +++ b/core/tests/coretests/src/android/view/textclassifier/SelectionEventTest.java @@ -29,6 +29,31 @@ import org.junit.runner.RunWith; @RunWith(AndroidJUnit4.class) public class SelectionEventTest { + @Test + public void testCreateSelectionActionEvent_valid() { + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_OVERTYPE); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_COPY); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_PASTE); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_CUT); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_SHARE); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_SMART_SHARE); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_DRAG); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_ABANDON); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_OTHER); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_SELECT_ALL); + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.ACTION_RESET); + } + + @Test(expected = IllegalArgumentException.class) + public void testCreateSelectionActionEvent_badRange() { + SelectionEvent.createSelectionActionEvent(0, -1, SelectionEvent.ACTION_OVERTYPE); + } + + @Test(expected = IllegalArgumentException.class) + public void testCreateSelectionActionEvent_badAction() { + SelectionEvent.createSelectionActionEvent(0, 1, SelectionEvent.EVENT_SELECTION_STARTED); + } + @Test public void testParcel() { final SelectionEvent event = SelectionEvent.createSelectionStartedEvent(