Permalink
Switch branches/tags
Commits on Aug 23, 2017
Commits on Aug 20, 2017
  1. inject: Use status=ABORTED instead of total=-1 to indicate timeout

    Krinkle committed Aug 20, 2017
    Follows-up 57b101b, which removed the idea of total=-1 as indicator
    of timeout in favor of status=ABORTED. The timeout in the outer frame
    from run.js was updated accordingly, but the hearbeat timeout in inject.js
    was left behind.
    
    Due to the database schema enforcing total as 'unsigned int default 0',
    the -1 may've gotten casted to 0, which resulted in an "unknown error"
    since the submission will have status=Finished but error=0, total=0, pass=0,
    fail=0.
    
    This might fix issue #316, if it turns out the unknown failures there
    are actually timeouts.
Commits on Aug 8, 2017
  1. inject: Add support for Jasmine

    Krinkle committed Aug 8, 2017
    Inspired by prior work by @treasonx (#233) and @lampietti (#276).
    
    Updated to work with Jasmine 2.x.
    
    Tested and verified using the default SpecRunner.html that comes
    with Jasmine standalone v2.7.0, and modifying it to load /js/inject.js
    from the local TestSwarm install.
    <https://github.com/jasmine/jasmine/releases/tag/v2.7.0>
    
    Fixes #167.
    Closes #233, #276.
Commits on Jul 18, 2017
  1. test: Add tests for pretty.js

    Krinkle committed Jul 18, 2017
    Ref #240.
Commits on Jul 10, 2017
  1. Update History.md

    Krinkle committed Jul 10, 2017
  2. Update History.md

    Krinkle committed Jul 10, 2017
  3. build: Update jQuery to 1.12

    Krinkle committed Jul 10, 2017
    For use of $.parseHTML().
Commits on Jun 23, 2017
  1. scripts: Add script to abort old runs that cannot be rerun

    Krinkle committed Jun 23, 2017
    For jquery.org, we remove the test suites from the build server
    after 30 days. So if a run still has a pending re-run after that
    date, it should be aborted automatically instead of sending it out
    to browsers again which will do nothing other than awaiting a 30s
    timeout on a 404 Not Found page.
  2. Use ResultAction constants instead of hardcoded integers

    Krinkle committed Jun 23, 2017
    Makes the code easier to follow/debug. No-op otherwise.
  3. api: Ensure api-error page can render

    Krinkle committed Jun 23, 2017
    Move assignment of $api back to outside the try/catch. Specifically,
    it should be created regardless of the outer conditional branch as
    otherwise the end of api.php that tries to report the error fails
    with "Variable $api not found".
    
    Follows-up 18f067a.
Commits on Apr 3, 2017
  1. BrowserInfo: Improve comment following up 7a3493f

    Krinkle committed Apr 3, 2017
    I was wrong to assume all emulators are like tablets, it just that
    I was only testing tablet emulators.
Commits on Mar 30, 2017
  1. BrowserInfo: Tolerate "Chrome" (Android) when requiring "Chrome Mobile"

    Krinkle committed Mar 30, 2017
    ua-parser should probably do this on their side, but at the moment
    it parses out as browserFamily=Chrome if the User-Agent doesn't specify
    "Mobile" after the Chrome version number.
    
    Some emulators and tablets exhibit this ua-pattern variation.
    Instead of requiring localSettings to specify which one is desired,
    allow both.
    
    Ref #306
  2. build: Update ua-parser

    Krinkle committed Mar 30, 2017
  3. JobPage: Fix project scope for pagination

    Krinkle committed Mar 30, 2017
    Follows-up 4aa7e6c. project_id is a string, not an integer.
    
    Apparently, in MySQL "SELECT * FROM x where id < 10 AND project=0"
    where project is a string column, just ends up ignoring that
    condition entirely. Thus making it yield an unrelated result,
    instead of nothing.
  4. Page: Fix bug where multiple projects in the menu are "active"

    Krinkle committed Mar 30, 2017
    Navigating to /project/jquerycolor also marked /project/jquery
    as active. This is now fixed.
  5. MaintenanceScript: Fix stty "invalid argument" warning when typing pa…

    Krinkle committed Mar 30, 2017
    …ssword
    
    When creating a new project from the command line (php manageProject.php --create),
    the password prompt prints this warning while typing because the trailing
    newline gets escaped but is not meant to be passed back this way.
Commits on Mar 23, 2017
  1. scripts: Fix broken update.php after switch to mysqli

    Krinkle committed Mar 23, 2017
    Follows-up d4b79ed which updated code from using php/mysql (deprecated,
    removed in PHP 5.5) to using the php/mysqli driver instead.
    
    The problem was that while most methods are compatible, one notable
    difference is mysql_fetch_field / mysqli_fetch_field_direct.
    The former reports the type with a string value. The latter
    uses MySQL's own type system, which uses integer constants (ENUM).
    
    As a result, the upgrade check to see if clients.useragent_id
    was already upgraded to varchar failed and wrongly assumed that
    a fresh install was in fact a pre-0.2.0 install.
  2. README: Add Travis CI badge

    Krinkle committed Mar 23, 2017
  3. api: Use json_encode() instead of var_dump() for debug

    Krinkle committed Mar 23, 2017
    More closely matches the non-debug format (whcih is json)
    and arguably easier to read.
  4. api: Add basic help page with overview of available actions and formats

    Krinkle committed Mar 23, 2017
    Shown by default when accessing /api.php.
  5. api: Fix uncaught error in case of invalid format

    Krinkle committed Mar 23, 2017
    Previously setFormat() would throw and cause a blank HTTP 500.
    Move it to inside the try/catch as this is still user input.
Commits on Mar 21, 2017
  1. scripts: Add --password option to manageProject.php

    Krinkle committed Mar 21, 2017
    The option previously only worked for project creation, but not
    when updating existing projects.
Commits on Jan 3, 2017
  1. MaintenanceScript: Fix spelling in doc comment

    Coeur authored and Krinkle committed Jan 3, 2017
    Closes #315.
Commits on Dec 8, 2016
  1. scripts: Restoring functionality with QUnit 2.x.

    workmanw authored and leobalter committed Dec 8, 2016
    Fixes gh-313
    Closes gh-314
Commits on Dec 2, 2016
  1. scripts: Implement purge.php with --maxage option

    Krinkle committed Dec 2, 2016
    Similar to clearJobsAndClients, but instead of a blind truncate,
    this recursively deletes data associated with jobs older than
    a certain number of days.
    
    Note that this script does not purge the clients table.
    
    * Fix WipejobAction to include a wipe of runresults for the
      relevant runs.
    * Fix WipejobAction to not double-count removed job rows in $stats.
  2. Database: Fix bad parameter to res->free_result()

    Krinkle committed Dec 2, 2016
    > PHP Warning:
    > mysqli_result::free_result() expects exactly 0 parameters, 1 given