README for cmdtest
==================

This project consists of two programs: the original `cmdtest`,
and the newer `yarn`. Both are black box testing tools for Unix
command line tools.

cmdtest
-------

`cmdtest` black box tests Unix command line tools.
Given some test scripts, their inputs, and expected outputs,
it verifies that the command line produces the expected output.
If not, it reports problems, and shows the differences.

See the manual page for details on how to use the program.

`cmdtest` is now in maintenance mode. I do not expect to add any new
features, but I will fix bugs. `yarn` is now the preferred tool, as it
seems to actually fit better the kinds of testing I and others have
been trying to do with `cmdtest`.


yarn
----

`yarn` also black box tests Unix command line tools, but takes
a different approach, where the emphasis is on verifying that the
tools works correctly in a sequence of operations, or
what we call a "test scenario". `yarn` is inspired [BDD][BDD],
behavior-driven development, and some of the implementations made
by the Ruby community.

See README.yarn for more details.

`yarn` has been designed with Daniel Silverstone.

[BDD]: https://en.wikipedia.org/wiki/Behavior-driven_development


Legalese
--------

Copyright 2011-2015 Lars Wirzenius

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

