Revision 410fe8465f4c5a51d25d95c62a53b569d980c1cf authored by Robert Ma on 19 March 2018, 15:34:37 UTC, committed by Robert Ma on 19 March 2018, 15:34:37 UTC
Similar to #10030 (which was for `wpt run`), this commit makes `wpt
check-stability` return a non-zero exit code when no tests run.

Also fix some code smells:

* `run` was redefined by `do_delayed_imports` to a different function.
  Rename the other `run` method in this module to `setup_and_run`.
* `retcode` was unnecessarily defined in the top scope. Remove it to
  avoid redefinition.
* `global logger` and the call to `get_parser` were extraneous in `run`
  (now `setup_and_run`) and hence are removed.
1 parent 9b3bb05
Raw File
send-sync-blocks-async.htm
<!DOCTYPE html>
<html>
<head>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <title>XMLHttpRequest: sync requests should block events on pending async requests</title>
</head>

<body>
    <div id="log"></div>

    <script type="text/javascript">
        var test = async_test();

        var expect = ['sync 4', 'async 2', 'async 3', 'async 4']
        var actual = []

        test.step(function()
        {
            var xhr_async = new XMLHttpRequest()
            xhr_async.open('GET', 'resources/delay.py?ms=1000', true) // first launch an async request, completes in 1 second
            xhr_async.onreadystatechange = test.step_func(() => {
                actual.push('async ' + xhr_async.readyState)
                if(xhr_async.readyState === 4 && actual.indexOf('sync 4')>-1){
                    VerifyResult()
                }
            });
            xhr_async.send()

            test.step_timeout(() => {
                var xhr_sync = new XMLHttpRequest();
                xhr_sync.open('GET', 'resources/delay.py?ms=2000', false) // here's a sync request that will take 2 seconds to finish
                xhr_sync.onreadystatechange = test.step_func(() => {
                    actual.push('sync ' + xhr_sync.readyState)
                    if(xhr_sync.readyState === 4 && actual.indexOf('async 4')>-1){
                        VerifyResult()
                    }
                });
                xhr_sync.send()
            }, 10);

            function VerifyResult()
            {
                test.step(function()
                {
                    assert_array_equals(actual, expect);
                    test.done();
                });
            };
        });
    </script>
</body>
</html>
back to top