Skip to content
Snippets Groups Projects
  • Sam Mikes's avatar
    4debe087
    browser runner: check negative regex · 4debe087
    Sam Mikes authored
    1. use negative regex (instead of ".") to check iframeError
    2. make Test262Error.prototype.toString() always include
       the string Test262Error (no spaces) so it matches /Test262Error/
    3. modify check for supportsWindowOnerror - require that
       first argument (message) to onerror() contains the error name
       by checking for /Error:/.
    
    Change (3) above forces IE11 onto the !supportsWindowOnerror path.
    Test262 tests are run inside an eval() on IE11, and errors are
    caught and explicitly have toString() called.  Without this,
    IE11 passes only the `message` property to onerror(), and regexes
    that expect to match error name fail.
    
    sth: revert to simple `onerror` checking
    
    gs: refactor function `$DONE`
    
    refactor logic tree
    add support for async test failures
    
    ed.js: crude support for error typing
    
    S8.7.1_A2: cache result of delete
    
    `delete` has a side-effect and its
    return value depends on this; cache result of
    delete so when reporting result, we are always
    reporting the result that made us fail, not the
    result of a new delete
    [pedantic]
    
    ed: explicitly pass cooked error to $DONE
    
    gs: only let $DONE be called once
    4debe087
    History
    browser runner: check negative regex
    Sam Mikes authored
    1. use negative regex (instead of ".") to check iframeError
    2. make Test262Error.prototype.toString() always include
       the string Test262Error (no spaces) so it matches /Test262Error/
    3. modify check for supportsWindowOnerror - require that
       first argument (message) to onerror() contains the error name
       by checking for /Error:/.
    
    Change (3) above forces IE11 onto the !supportsWindowOnerror path.
    Test262 tests are run inside an eval() on IE11, and errors are
    caught and explicitly have toString() called.  Without this,
    IE11 passes only the `message` property to onerror(), and regexes
    that expect to match error name fail.
    
    sth: revert to simple `onerror` checking
    
    gs: refactor function `$DONE`
    
    refactor logic tree
    add support for async test failures
    
    ed.js: crude support for error typing
    
    S8.7.1_A2: cache result of delete
    
    `delete` has a side-effect and its
    return value depends on this; cache result of
    delete so when reporting result, we are always
    reporting the result that made us fail, not the
    result of a new delete
    [pedantic]
    
    ed: explicitly pass cooked error to $DONE
    
    gs: only let $DONE be called once