Insanity, a GStreamer QA System
-------------------------------

The source code and documentation contained within is LGPL.

This work was sponsored by Nokia.

Philosophy
----------

   Insanity is a collection of several parts:

   * the insanity python module (insanity/) containing:
     * base classes for tests and scenarios
     * logic for running the tests
     * database support for storing results
     * base classes for applications
   * A series of tests and scenarios (tests/)
   * Some command-line tools (bin/)
   * A django web interface (web/)
     * /!\ Still under development


Provided tools
--------------
  To run all these tools, you need to have the location of the
  insanity module in your python path.
    Ex : PYTHONPATH=/full/path/to/top/directory:$PYTHONPATH

 * gst-media-test : simulates the same behaviour as the historical
                    GStreamer media-test
 * dumpresults.py : provides visualisation of the database contents
 * compare.py : Compares two test runs
 * grouper.py : Groups the results of a testrun for easier reporting.


Inline documentation
--------------------

  The source code is commented with python-style documentation.

  You can get an html version by using epydoc and the following
command:

  epydoc -o epydoc --docformat plaintext -v insanity

Requirements
------------
  Python >= 2.5 *OR* Python >= 2.4 with the sqlite python module
  DBus and python bindings
  Django 1.0 (for the web frontend only)

Database support
----------------

  Currently the data is stored in a sqlite file.
  The default filename is 'testrun.db' in the current directory.

Django web frontend (for searching and reporting)
-------------------------------------------------
  The django classes/templates are provided in the web directory.

  You will have to modify the database settings in settings.py
  according to your local settings.

  > python manage.py runserver

  This will start a local http daemon. The insanity pages are located
  in the insanity subdirectory.

  Ex: http://127.0.0.1:8000/insanity/
