{% extends "_layout.html" %} {% block title %}Bounty unittests{% endblock %} {% block content %}

To improve I2P's maintainability, we want to have a solid set of automated unit tests for the critical code. While we do have some unit tests at the moment, they are ad-hoc. This bounty is for someone to move the tests over to jUnit, automate their execution, extend them to provide better code coverage, and publish the report online. Its a massive effort, but can be broken down into phases, listed below (phase 1 must occur first, but further phases may happen in any order)

Phase 1: SDK test migration

Bounty: $300 CLAIMED! By ComWiz

To collect this bounty, the existing SDK tests must be moved over to jUnit, integrated into the ant build scripts ("ant test"), and tied in with a code coverage tool (e.g. Clover). The ant script must be capable of generating test status results as a web page, which will be published online.

Phase 2: SDK test coverage

Bounty: $300

To collect this bounty, the automated unit tests must meet a measured code coverage of 90% of the SDK (i2p/core/java/src).

Phase 3: Router test migration

Bounty: $300

As with phase 1, the existing unit tests for the router must be moved over to the automated system.

Phase 4: Router test coverage

Bounty: $300

To collect this bounty, the automated unit tests must meet a measured code coverage of 90% of the router (i2p/router/java/src).

Phase 5: Streaming lib tests

Bounty: $300

To collect this bounty, a new set of unit tests must meet a measured code coverage of 90% of the streaming lib (i2p/apps/ministreaming/ and i2p/apps/streaming/).

Note: bounty amounts may be increased by further donations. Do you think these are important? Add in your donation, marking the amount for the unit test bounty!

{% endblock %}