1. 15 Sep, 2014 11 commits
    • Solly Ross's avatar
      Cleanup: RFB Client · b1dee947
      Solly Ross authored
      File: rfb.js (also websock.js)
      Tests Added: True
      
      Changes:
      - De-Crockford-ified rfb.js
      - Added methods to websock.js to skip bytes in the receive queue
      b1dee947
    • Solly Ross's avatar
      Cleanup: Display Helper · 1e13775b
      Solly Ross authored
      File: display.js
      Tests Added: True (preliminary)
      
      Changes:
      - De-crockford-ified the file
      
      NOTE: the tests included for display.js cover basic functionality, but
      are by no means nearly as comprehensive as the ones presented for
      rfb.js.
      1e13775b
    • Solly Ross's avatar
      Cleanup: WebSocket Helper · 2cccf753
      Solly Ross authored
      File: websock.js
      Tests Added: True
      Changes:
      - Cleaned up JSHint errors
      - Converted to normal JS constructor pattern with "private" fields and
        methods now simply being prepended by underscores
      - Added a "bind" polyfill for use in PhantomJS 1.x in util.js
      - Added FakeWebSocket to fill in for actual WebSocket objects when
        testing
      - Made exception handler actually log exception name and message,
        to console, in addition to stack trace
      2cccf753
    • Solly Ross's avatar
      Cleanup: Webutil code · ee7d4c61
      Solly Ross authored
      File: webutil.js
      Tests Added: False
      Changes:
      - Fixed JSHint Errors (global "use strict", spaces)
      - added some newline characters when appropriate for readability
      - moved variable declarations to the places they were actually used
        for readability
      ee7d4c61
    • Solly Ross's avatar
      Cleanup: Keyboard code · 31f169e8
      Solly Ross authored
      File: keyboard.js
      Tests Added: False (already present)
      Changes:
      - Fixed JSHint Errors
      - Moved functions outside loops
      - Added proper include directives to tests
      31f169e8
    • Solly Ross's avatar
      Cleanup: Input code · d6e281ba
      Solly Ross authored
      File: input.js
      Tests Added: False (already present partially -- see below)
      Changes:
      - Fixed JSHint Errors
      - Converted to normal non-Crockford constructors
      
      NOTE: while there are tests for the actual key-detecting functionality,
            the tests do not cover the actual Keyboard and Mouse objects
            themselves.
      d6e281ba
    • Solly Ross's avatar
      Cleanup: Util code · d21cd6c1
      Solly Ross authored
      File: util.js
      Tests Added: True (partial -- for logging and array push methods)
      Changes:
      - Fixed JSHint Errors (indentation, semicolons, global "use strict")
      - Made browser detection methods more readable
      - added some newline characters when appropriate for readability
      - throw Errors not strings!
      - Removed conf_defaults, and added make_properties and set_defaults
        instead (see below)
      
      The removal of conf_defaults and switch to make_properties and
      set_defaults is to facilitate the switch over to normal Javascript
      constructors instead of Crockford-style constructors.  Now, methods
      are added to the objects prototype (and thus make properties is called
      outside the constructor).
      d21cd6c1
    • Solly Ross's avatar
      Cleanup: DES code · fb64ed21
      Solly Ross authored
      File: des.js
      Tests Added: False
      Changes:
      - Fixed JSHint Errors
      - Improved whitespace around operators
      fb64ed21
    • Solly Ross's avatar
      Cleanup and Test: base64.js · f8e9b9f1
      Solly Ross authored
      This is the first commit in a series of commits
      which improve the readability of some of the code
      and add tests.
      
      File: base64.js
      Tests Added: True
      Changes:
      - Improved indentation
      - Fixed JSHint errors
      - Moved loop variables to be declared in the loop for better readability
        (N.B. Javascript does not have block scoping, so the variables are
        still technically available outside the loop -- it just makes the code
        clearer to place them inside the loop, since they are only used there)
      f8e9b9f1
    • Solly Ross's avatar
      Support the "NOTUNNEL" tunnel type for TightVNC · 95eb681b
      Solly Ross authored
      Previously, tight auth was supported without any support for tunnels,
      even the no-op tunnel.  No, the no-op tunnel type is supported.
      95eb681b
    • Solly Ross's avatar
      Support running all tests from the root directory · 91127741
      Solly Ross authored
      Previously, if you did not specify a tests file,
      you had to be in the 'tests' directory for the
      "run all tests" functionality to work.  Now it
      will work in any directory.
      91127741
  2. 19 Aug, 2014 1 commit
  3. 03 Jun, 2014 5 commits
    • Solly Ross's avatar
      Fix race condition in test runner · 9b731d3a
      Solly Ross authored
      Previously, there would be a case where if your tests took
      too long to run, the casper test runner would only report
      on certain tests.  This has been fixed.
      9b731d3a
    • Solly Ross's avatar
      Output error events from provider in test runner · 93af721a
      Solly Ross authored
      Now, 'error' events from the test runner are output to stderr.
      Additionally, when debug is enabled, debug output is logged to
      stderr instead of stdout (as was the case previously).
      93af721a
    • Solly Ross's avatar
      Fixed typo in run_from_console.js · 7187bc12
      Solly Ross authored
      7187bc12
    • Solly Ross's avatar
      Add support for injecting test helper files · d906dfc9
      Solly Ross authored
      Now, the phrase `requires test modules: ` may be place in a comment
      in a file to require modules local to the test directory, similarly
      to the way the `require local modules: ` line may be used to inject
      files in the 'include' directory.  This is useful for when common
      fakes need to be injected into a test.
      d906dfc9
    • Solly Ross's avatar
      Support automatically opening test HTML in browser · 4a4643c0
      Solly Ross authored
      When using the '-g' option with run_from_console.js, you can
      now pass the '-o' option to automatically open the generated
      HTML file in your default browser.  This relies on the 'open'
      NPM module.
      4a4643c0
  4. 06 May, 2014 1 commit
  5. 05 May, 2014 2 commits
  6. 14 Apr, 2014 2 commits
  7. 07 Apr, 2014 2 commits
  8. 04 Apr, 2014 4 commits
  9. 28 Mar, 2014 1 commit
  10. 26 Mar, 2014 4 commits
  11. 17 Mar, 2014 1 commit
  12. 14 Mar, 2014 2 commits
  13. 12 Mar, 2014 3 commits
    • Samuel's avatar
      Merge pull request #348 from Medical-Insight/fix-altgr-firefox · f1e6daf3
      Samuel authored
      Fix altgr firefox
      f1e6daf3
    • Jesper Dam's avatar
      Better browser OS detection. · 23078406
      Jesper Dam authored
      Apparently Firefox on Linux changed the value of navigator.appVersion,
      causing our OS detection (used to determine how to interpret different
      modifier keys) to fail.
      
      Use navigator.platform instead, which should be more stable.
      
      http://stackoverflow.com/a/19883965/33213
      23078406
    • Jesper Dam's avatar
      Better key identifiers · c3f60524
      Jesper Dam authored
      Previously we identified keys in keyboard events by the 'key' property
      if it was set, and 'keyCode' otherwise.
      
      This turns out to be problematic as Firefox no longer leaves 'key'
      undefined (so we fall back to using 'keyCode'), but instead sets 'key'
      to 'MozPrintableKey' for all printable keys.
      
      This meant that when (printable) keys are released, we can't match it
      against the corresponding keydown event, and instead just send a keyup
      event for the last keydown received.
      
      Now, if both 'key' and 'keyCode' are set, use the concatenation of both.
      Otherwise prefer 'keyCode', as that is at least unique for every key.
      
      This should let us release the right keys on keyup events.
      c3f60524
  14. 11 Mar, 2014 1 commit