Revision be27f89da7c2a43e47df45a472668bdb17433c48 authored by James Graham on 13 October 2016, 14:30:24 UTC, committed by James Graham on 20 October 2016, 13:07:02 UTC
The purpose of the job is to identify poorly-written, unstable, tests as
early in the cycle as possible. To this end we use wptrunner to run all
the changed tests in the PR in Firefox and Chrome. If 10 runs of the
tests don't all give a consisent result then the job fails.

Adding Edge and Safari should be possible, but will be challenging
because of their strict platform dependencies.
1 parent 7987189
Raw File
touch-globaleventhandler-interface.html
<!DOCTYPE HTML>
<title>GlobalEventHandlers Touch Interface Tests</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
test(function() {
    var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel'];
    var global_event_handlers = [window, HTMLElement.prototype, SVGElement.prototype, Document.prototype];
    for (var i in touch_event_list) {
        for (var j in global_event_handlers) {
            assert_true(touch_event_list[i] in global_event_handlers[j], "Touch event " + touch_event_list[i] + " in " + global_event_handlers[j].constructor.name);
        }
    }
}, "Touch events in GlobalEventHandlers");

test(function() {
    var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel'];
    var global_event_handlers = [window, HTMLElement.prototype, SVGElement.prototype, Document.prototype];
    for (var i in touch_event_list) {
        for (var j in global_event_handlers) {
            assert_true(global_event_handlers[j].hasOwnProperty(touch_event_list[i]), "GlobalEventHandler " + global_event_handlers[j].constructor.name + " hasOwnProperty " + touch_event_list[i]);
        }
    }
}, "Touch events are GlobalEventHandlers' own property");

test(function() {
    var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel'];
    var non_global_event_handlers = [Element.prototype];
    for (var i in touch_event_list) {
        for (var j in non_global_event_handlers) {
            assert_false(touch_event_list[i] in non_global_event_handlers[j], "Touch event " + touch_event_list[i] + " not in " + non_global_event_handlers[j].constructor.name);
        }
    }
}, "Touch events not in Element.prototype");
</script>
back to top