
TODO:

- object compare should be more informative than 'objects dont match'

- specify suite and test number via. command-line to run a specific test

- make tests use promises (already done to a degree, might be good to provide
  the q promise library as a helper, similar to jquery)

- HTTP / REST testing
    - write a framework for making remoteStorage provider integration test.
    - use github.com/jcoglan/remotestorage-oauth to get a token for testing

- provide command-line arguments to control the brevity of the test results.

- testing in the browser

- write tests to tests the Teste library methods directly.



MAYBE:

? indicate in a test that you'd like to keep the env resident for the next
  test



COMPLETED:

x move before & afterEach objects to be children of the test object, so each
  times it's run it has it's own clean environment.

x run tests from filenames passed as command-line arguments (nilclass)

x move modules to requirejs for interoperabilty on both server and client side

x support for baseClient.on() function (on error or change)

x built in support for remoteStorage module testing, baseClient mocks and schema validation

x make sure tests which have assertFail set to true, fail if they pass.

x support for multipe asserts in the same test with assertAnd() and assertTypeAnd()

x basic support for stub functions

x names no longer used for tests, suite names options, descriptions still required, display output simplified

x to test libraries, we need to patch the libraries to return modules.export if
  it's enclosed in a self-executing function.

x you can override timeouts if you know the async call may take a while

x assertFail indicates the test is supposed to fail

x this.assert() to test variables, can also compare objects. this.status()
  automatically set based on results.

x async testing works (test isn't complete when it returns, it's complete when
  this.result() is set true or false.). using the this.tools.jQuery for async
  calls (see tests in suite 'async').

x tools available to tests, this.tools.jQuery, etc.

x suites and tests have their own environments, and shared environments as
  well. the 'env' object is passed to the test function as the first parameter.


