diff --git a/dom/html/test/forms/mochitest.ini b/dom/html/test/forms/mochitest.ini index e9fe9799f58f..c9db8eaebb1c 100644 --- a/dom/html/test/forms/mochitest.ini +++ b/dom/html/test/forms/mochitest.ini @@ -33,19 +33,12 @@ skip-if = android_version == '18' # Android, bug 1147974 [test_input_color_picker_update.html] skip-if = android_version == '18' # Android, bug 1147974 [test_input_date_bad_input.html] -skip-if = os == "android" [test_input_date_key_events.html] -skip-if = os == "android" [test_input_datetime_input_change_events.html] -skip-if = os == "android" [test_input_datetime_focus_blur.html] -skip-if = os == "android" [test_input_datetime_focus_blur_events.html] -skip-if = os == "android" [test_input_datetime_focus_state.html] -skip-if = os == "android" [test_input_datetime_tabindex.html] -skip-if = os == "android" [test_input_defaultValue.html] [test_input_email.html] [test_input_event.html] @@ -71,11 +64,10 @@ skip-if = os == "android" [test_input_range_mozinputrangeignorepreventdefault.html] [test_input_range_rounding.html] [test_input_sanitization.html] +skip-if = os == 'android' && debug # Extremely slow on debug android [test_input_textarea_set_value_no_scroll.html] [test_input_time_key_events.html] -skip-if = os == "android" [test_input_time_sec_millisec_field.html] -skip-if = os == "android" [test_input_types_pref.html] [test_input_typing_sanitization.html] skip-if = os == "android" && debug # bug 1397615 diff --git a/dom/html/test/forms/test_input_date_bad_input.html b/dom/html/test/forms/test_input_date_bad_input.html index da2f4d0700cf..60e4a1d10fe0 100644 --- a/dom/html/test/forms/test_input_date_bad_input.html +++ b/dom/html/test/forms/test_input_date_bad_input.html @@ -37,6 +37,7 @@ SimpleTest.waitForFocus(function() { }); const DATE_BAD_INPUT_MSG = "Please enter a valid date."; +const isDesktop = !/Mobile|Tablet/.test(navigator.userAgent); function checkValidity(aElement, aIsBadInput) { is(aElement.validity.valid, aIsBadInput ? false : true, @@ -93,9 +94,12 @@ function test() { elem.blur(); checkValidity(elem, true); - // Clearing all fields should clear bad input validity state as well. - synthesizeMouse(input, resetButton_X, resetButton_Y, {}); - checkValidity(elem, false); + // Reset button is desktop only. + if (isDesktop) { + // Clearing all fields should clear bad input validity state as well. + synthesizeMouse(input, resetButton_X, resetButton_Y, {}); + checkValidity(elem, false); + } } diff --git a/dom/html/test/forms/test_input_datetime_input_change_events.html b/dom/html/test/forms/test_input_datetime_input_change_events.html index e636995d3694..4ab02444dda5 100644 --- a/dom/html/test/forms/test_input_datetime_input_change_events.html +++ b/dom/html/test/forms/test_input_datetime_input_change_events.html @@ -26,6 +26,8 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1370858 * Test that change and input events are (not) fired for date/time inputs. **/ +const isDesktop = !/Mobile|Tablet/.test(navigator.userAgent); + var inputTypes = ["time", "date"]; var changeEvents = [0, 0]; var inputEvents = [0, 0]; @@ -73,12 +75,15 @@ function test() { is(changeEvents[i], 2, "Change event should be dispatched (2)."); is(inputEvents[i], 2, "Input event should be dispatched (2)."); - // Test that change and input events are fired when clearing the value using - // the reset button. - synthesizeMouse(input, resetButton_X, resetButton_Y, {}); - is(input.value, "", "Check that value was set correctly (3)."); - is(changeEvents[i], 3, "Change event should be dispatched (3)."); - is(inputEvents[i], 3, "Input event should be dispatched (3)."); + // Reset button is desktop only. + if (isDesktop) { + // Test that change and input events are fired when clearing the value using + // the reset button. + synthesizeMouse(input, resetButton_X, resetButton_Y, {}); + is(input.value, "", "Check that value was set correctly (3)."); + is(changeEvents[i], 3, "Change event should be dispatched (3)."); + is(inputEvents[i], 3, "Input event should be dispatched (3)."); + } } } diff --git a/dom/html/test/forms/test_input_typing_sanitization.html b/dom/html/test/forms/test_input_typing_sanitization.html index b384c0435e39..e39c122c7d5e 100644 --- a/dom/html/test/forms/test_input_typing_sanitization.html +++ b/dom/html/test/forms/test_input_typing_sanitization.html @@ -25,7 +25,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=765772 * This test checks that when a user types in some input types, it will not be * in a state where the value will be un-sanitized and usable (by a script). */ -const isDesktop = !/Mobile|Tablet/.test(navigator.userAgent); var input = document.getElementById('i'); var form = document.getElementById('f'); @@ -137,47 +136,6 @@ function* runTest() "42,13", // comma can't be used as a decimal separator ] }, - { - mobileOnly: true, - type: 'date', - validData: [ - '0001-01-01', - '2012-12-21', - '2013-01-28', - '100000-01-01', - ], - invalidData: [ - '1-01-01', - 'a', - '-', - '2012-01', - '2013-01-1', - '1011-23-21', - '1000-12-99', - ] - }, - { - mobileOnly: true, - type: 'time', - validData: [ - '00:00', - '09:09:00', - '08:23:23.1', - '21:43:56.12', - '23:12:45.100', - ], - invalidData: [ - '00:', - '00:00:', - '25:00', - '-00:00', - '00:00:00.', - '00:60', - '10:58:99', - ':19:10', - '23:08:09.1012', - ] - }, { type: 'month', validData: [ @@ -236,10 +194,6 @@ function* runTest() for (test of data) { gCurrentTest = test; - if (gCurrentTest.mobileOnly && isDesktop) { - continue; - } - input.type = test.type; gValidData = test.validData; gInvalidData = test.invalidData; diff --git a/layout/reftests/forms/input/datetime/reftest.list b/layout/reftests/forms/input/datetime/reftest.list index d64a148f89fe..b6d68a4836d7 100644 --- a/layout/reftests/forms/input/datetime/reftest.list +++ b/layout/reftests/forms/input/datetime/reftest.list @@ -1,24 +1,21 @@ default-preferences pref(dom.forms.datetime,true) -# not valid on Android where type=time looks like type=text -skip-if(Android) != time-simple-unthemed.html time-simple-unthemed-ref.html -skip-if(Android) != time-large-font.html time-basic.html -skip-if(Android) != time-width-height.html time-basic.html -skip-if(Android) != time-border.html time-basic.html -# only valid on Android where type=number looks the same as type=text -skip-if(!Android) == time-simple-unthemed.html time-simple-unthemed-ref.html +!= time-simple-unthemed.html time-simple-unthemed-ref.html +!= time-large-font.html time-basic.html +!= time-width-height.html time-basic.html +!= time-border.html time-basic.html # type change -skip-if(Android) == to-time-from-other-type-unthemed.html time-simple-unthemed.html -skip-if(Android) == from-time-to-other-type-unthemed.html from-time-to-other-type-unthemed-ref.html +== to-time-from-other-type-unthemed.html time-simple-unthemed.html +== from-time-to-other-type-unthemed.html from-time-to-other-type-unthemed-ref.html # content should not overflow on small width/height -skip-if(Android) == time-small-width.html time-small-width-ref.html -skip-if(Android) == time-small-height.html time-small-height-ref.html -skip-if(Android) == time-small-width-height.html time-small-width-height-ref.html +== time-small-width.html time-small-width-ref.html +== time-small-height.html time-small-height-ref.html +== time-small-width-height.html time-small-width-height-ref.html # content (text) should be left aligned -skip-if(Android) == time-content-left-aligned.html time-content-left-aligned-ref.html +fuzzy-if(Android,4,8) == time-content-left-aligned.html time-content-left-aligned-ref.html # reset button should be right aligned skip-if(Android) == time-reset-button-right-aligned.html time-reset-button-right-aligned-ref.html # bug 1372062