For Developpers

Write tests

Client-side extension

The client-side extension uses Mercurial’s own test framework to be tested. This means that mercurial has to be present as a source package for tests to be run.

The recommended setup is to clone mercurial repository next to the buglink one.

Then To run the tests, simply run:

$ make tests

within the buglink root directory. If you added some, and want to update the corresponding output, call the tests as follow:

$ make tests TESTFLAGS=-i

This way, you will be asked if the given output match your expectations, and if you want to include it in the test-case.

Server-side extension

Database migration

database migration, using sqlalchemy-migrate can be tested with their own tools, just run:

migrate test sqlite:////path/to/db .

in the server/dbmigrate directory. (Don’t forget to run it only on test-databases).

Mercurial hook

Todo

Write tests

Web Server

Todo

Write flask tests

Extend the DB Schema

The raw program, although bringing a good stable base to manage issues might not be enough for your setup, it, for instance, does not tries to match different repositories together. You might want to tweak it to match your release procedure.

I do it by branching the repository, which means bug fixes have to be regulary merged into my private branch. Feel free to do the same.