Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 package org.mozilla.gecko.tests.helpers;
7 import static org.mozilla.gecko.tests.helpers.AssertionHelper.fAssertEquals;
8 import android.view.inputmethod.ExtractedText;
9 import android.view.inputmethod.ExtractedTextRequest;
10 import android.view.inputmethod.InputConnection;
12 /**
13 * Provides helper functions for accessing the InputConnection interface
14 */
15 public final class TextInputHelper {
17 private TextInputHelper() { /* To disallow instantiation. */ }
19 private static ExtractedText getExtractedText(final InputConnection ic) {
20 ExtractedTextRequest req = new ExtractedTextRequest();
21 ExtractedText extract = ic.getExtractedText(req, 0);
22 return extract;
23 }
25 private static String getText(final InputConnection ic) {
26 return getExtractedText(ic).text.toString();
27 }
29 public static void assertText(final String message,
30 final InputConnection ic,
31 final String text) {
32 fAssertEquals(message, text, getText(ic));
33 }
35 public static void assertSelection(final String message,
36 final InputConnection ic,
37 final int start,
38 final int end) {
39 ExtractedText extract = getExtractedText(ic);
40 fAssertEquals(message, start, extract.selectionStart);
41 fAssertEquals(message, end, extract.selectionEnd);
42 }
44 public static void assertSelectionAt(final String message,
45 final InputConnection ic,
46 final int value) {
47 assertSelection(message, ic, value, value);
48 }
50 public static void assertTextAndSelection(final String message,
51 final InputConnection ic,
52 final String text,
53 final int start,
54 final int end) {
55 ExtractedText extract = getExtractedText(ic);
56 fAssertEquals(message, text, extract.text);
57 fAssertEquals(message, start, extract.selectionStart);
58 fAssertEquals(message, end, extract.selectionEnd);
59 }
61 public static void assertTextAndSelectionAt(final String message,
62 final InputConnection ic,
63 final String text,
64 final int selection) {
65 assertTextAndSelection(message, ic, text, selection, selection);
66 }
67 }