Here is a list and short description of each action available in Kwala.

code_change

Is a special action that compares two directories generated by ri and shows the differences between them. If you create ri documentation for a project and one week later create a new set of ri documentation for this project, you can then see what new classes and methods were added or removed.

code_duplication

Checks for duplicated code in your source base. It uses the Java program CPD from the PMD project to find duplicated code. In order to use this action all you need is a working Java VM as CPD itself comes bundled with Kwala.

cyclomatic

Checks the cyclomatic complexity of all the methods in a project. It will list the top 10 errors and warnings on the summary page. This action requires Saikuro (see http://saikuro.rubyforge.org) in order to run.

loc

Counts the lines of code/comments and test cases in a project.

code_coverage

Shows how much code is covered by the unit tests in a project. Require rcov to work.

formatting

Checks the project against various rules for how code should be formatted. Of course, these rules are a matter of opinion, so please change the parameters to your liking.

comment_check

Scans the project for special comment flags and generates summaries for each comment and a link to the source code where the comment can be found. Flags searched for are: BUG FIXME ??? TODO and XXX

outside_links

Generates links on the summary page to other web tools like: rdoc, viewvc and whatever you wish to add.

cycles

Checks the project for require commands that create a cycle (loop where one require winds up requiring itself through other files). Also generates a graph of the requires in the project. The output of the graph is feed into Prefuse's demo Java Applet for an interactive view of the graph structure.

requires

Checks and reports how files require each other. Useful for finding potentially awkward design decisions.

syntax_check

Runs ruby's syntax check on all Ruby files in the project.

unit_test

Runs the unit tests found in the project. The summary page will contain all failing tests or any tests that generated ruby warnings while running.

multiruby_unit_test

Runs the unit tests against multiple versions of the ruby interpreter. This requires multiruby, part of ZenTest: http://www.zenspider.com/ZSS/Products/ZenTest/

Back to Kwala