Commits on Sep 7, 2012
  1. Bump version.

    committed Sep 7, 2012
  2. Drop 'findit' and use 'walkdir', support Windows.

    This commit drops 'findit' as it has issues running on Windows, see
    'walkdir' works around this issue by not using the inode value of a file
    if it's not supplied by Node.js.
    committed Sep 7, 2012
  3. Bump dependencies versions in package.json and address deprecations.

    This commit tracks the latest versions of dependencies listed in
    package.json. As a result of the upgrade, the Express server in
    test/server.js had to be updated as well.
    committed Sep 7, 2012
  4. "path.exists is now called `fs.exists`." OK, got it.

    This commit bumps the required Node.js version to >=0.8. As a result, we
    need to take care of some deprecation warnings such as the one listed in
    the subject of this commit.
    committed Sep 7, 2012
  5. Add (verified) support for PhantomJS 1.6.x.

    All available tests run under that version.
    committed Sep 7, 2012
  6. Emit 'compile' to allow hooks to modify the code before it's compiled.

    This commit allows a hook to modify the contents of the file being
    compiled. That can be used to process directives, such as custom
    require's, etc.
    committed Sep 7, 2012
Commits on Apr 25, 2012
  1. Bump version number and fix package.json for naughty NPM.

    There is still an open bug at:
    This commit is a workaround, but doesn't fix the issue which still exists
    in NPM.
    committed Apr 25, 2012
  2. Add (verified) support for PhantomJS 1.4.x and 1.5.x.

    All available tests run under these versions.
    committed Apr 25, 2012
Commits on Dec 13, 2011
  1. Use module 'tmp' instead of 'temp'.

    'temp' seems to be incompatible with Node.js 0.6.x as it still relies
    on the 'sys' module.
    'tmp' on the other hand seems to have been updated recently and have
    better version history on
    committed Dec 13, 2011
Commits on Dec 12, 2011
Commits on Dec 10, 2011
  1. Allow Lottefile to be written in CoffeeScript.

    Supported Lottefile languages are now: JavaScript, CoffeeScript.
    committed Dec 10, 2011
  2. Add experimental start/before/after/exit events.

    All events are asynchronous and they must have a valid signature.
    Once an event/message is processed, the continuation block must be called
    for Lotte to resume.
    - 'start'  function(options,    resume) { resume(); }
    - 'before' function(file,       resume) { reusme(); }
    - 'after'  function(file, code, resume) { resume(); }
    - 'exit'   function(code,       resume) { resume(); }
    - 'options' is an array derived from the command-line or a Lottefile
    - 'file' is a test file (absolute path)
    - 'code' is the exit code either of the test file or the entire suite
    committed Dec 10, 2011
  3. Don't duplicate default values, trust the defaults or the command line.

    The default values are already supplied to Optimist. If something goes wrong,
    complain about it rather than reverting to the safe defaults.
    committed Dec 10, 2011
  4. {notify => message}

    committed Dec 10, 2011
  5. Add support for client -> server notifications and message passing.

    Using @notify(event, ...args, resume) tests can talk to Node.js on the
    server-side. Data can be exchanged as long as it is serialisable.
    See / Lottefile for an example.
    committed Dec 10, 2011
  6. Whoops, collect garbage properly.

    The previous code was off-by-one causing Lotte to hang in certain situations.
    committed Dec 10, 2011
  7. Add a dummy HTTP server.

    This server will be used for IPC with PhantomJS. Events, such as test
    case start, pass, fail, etc. will be communicated over HTTP (not yet
    The server is enabled by default, but can be disabled either using
    '--no-server' on the command line or 'server = false' in a Lottefile.
    The default listening port is 3838 which should be unprivileged.
    The default bind address is localhost,
    committed Dec 10, 2011
  8. Allow Lottefile to log messages, require additional files, etc.

    Export useful objects and functions which we think may be used within a
    Lottefile. This will be helpful when dealing with plug-ins.
    committed Dec 10, 2011
  9. Recognise *.coffee files by default as well.

    The previous pattern only matched JavaScript files. Since Lotte supports
    CoffeeScript out-of-the box, accept lotte_*.coffee files by default.
    committed Dec 10, 2011
Commits on Dec 9, 2011
  1. Add @using(..) helper to pass objects to PhantomJS.

    This hack has the same limitations as when passing variables from PhantomJS
    to Lotte - it can only work on simple types and cannot serialize functions,
    regular expressions, etc.
    It is still better than having nothing or having to write the code yourself
    each time a variable from a different environment is needed.
    committed Dec 9, 2011
  2. Add `make publish`.

    committed Dec 9, 2011
Commits on Nov 24, 2011
  1. Bump version.

    committed Nov 24, 2011
  2. More Windows support, d'oh!

    When normalizing the path, convert back slashes to forward slashes
    so minimatch can process the glob properly.
    When passing a filename to `coffee`, wrap it in double quotes, the
    Windows shell does not like single quotes.
    committed Nov 24, 2011
  3. Add Windows path support.

    When expanding internal require's(..), process Windows paths as well.
    Since the directory separator is '\' and not '/' we need to look for
    another character which would indicate this is a path, not a system
    require(..) call.
    committed Nov 24, 2011