]> git.llucax.com Git - software/mutest.git/log
software/mutest.git
15 years agoAdd make release target (for internal use only) 1.0
Leandro Lucarella [Fri, 26 Dec 2008 00:04:47 +0000 (22:04 -0200)]
Add make release target (for internal use only)

This make target is used just to ease the release process.

15 years agoAdd make install targets
Leandro Lucarella [Thu, 25 Dec 2008 23:36:38 +0000 (21:36 -0200)]
Add make install targets

15 years agoAdd documentation
Leandro Lucarella [Thu, 25 Dec 2008 23:35:09 +0000 (21:35 -0200)]
Add documentation

This patch add a README file in reStructuredText format and a Makefile to
build a PDF and HTML manual from it. A test target is included too to
compile and run the samples.

15 years agoFix Python implementation options
Leandro Lucarella [Thu, 25 Dec 2008 23:26:37 +0000 (21:26 -0200)]
Fix Python implementation options

Rename -a/--search-all to -s/--search, move --verbose alias from -q to -v
and add --quiet alias for -q.

15 years agoMake test cases execute in alphabetic order
Leandro Lucarella [Mon, 15 Dec 2008 19:40:16 +0000 (17:40 -0200)]
Make test cases execute in alphabetic order

Remove nm's -p switch so alphabetic order is used to get the test suite
symbols (test cases and initialization/termination functions). This way
execution order can be deterministic.

15 years agoRemove extra \n from a log message
Leandro Lucarella [Fri, 12 Dec 2008 21:19:03 +0000 (19:19 -0200)]
Remove extra \n from a log message

15 years agoAdd some C++ support
Leandro Lucarella [Fri, 12 Dec 2008 18:28:43 +0000 (16:28 -0200)]
Add some C++ support

This patch add some C++ support by catching exceptions in mu_check() and
mu_ensure() macros (when compiled with a C++ compiler, of course). In
addition to this, it adds 2 new macros for checking that some expression
throws a particular exception: mu_echeck() and mu_eensure().

A sample test suite for the new features is added too.

15 years agoReuse checking macros code
Leandro Lucarella [Fri, 12 Dec 2008 18:23:50 +0000 (16:23 -0200)]
Reuse checking macros code

15 years agoUnify C and Python implementations header file
Leandro Lucarella [Fri, 12 Dec 2008 12:43:10 +0000 (10:43 -0200)]
Unify C and Python implementations header file

Make both implementations use the same mutest.h. When using the Python
implementation the macro MUTEST_PY should be set.

15 years agoImprove names of sample Makefile's variables
Leandro Lucarella [Fri, 12 Dec 2008 12:40:15 +0000 (10:40 -0200)]
Improve names of sample Makefile's variables

15 years agoAdd license and a description to all the sources
Leandro Lucarella [Wed, 10 Dec 2008 13:54:04 +0000 (11:54 -0200)]
Add license and a description to all the sources

15 years agoImplement test suite initialization and termination
Leandro Lucarella [Wed, 10 Dec 2008 15:51:54 +0000 (13:51 -0200)]
Implement test suite initialization and termination

This patch adds test suite initialization and termination support to both
C/bash and Python implementations.

Any exported function in a test suite that starts with "mu_init" is used
as an initialization function (returning 0 if the initialization
succeeded) and any function starting with "mu_term" is used as
a termination function. If initialization fails (any initialization
funtion fails), the test suite is skipped.

15 years agoAllow using just 'mu_test' as a test case name
Leandro Lucarella [Tue, 9 Dec 2008 19:21:48 +0000 (17:21 -0200)]
Allow using just 'mu_test' as a test case name

This could be useful for very trivial proyects with just one test case.

15 years agoFactor out get_fun() and get_val()
Leandro Lucarella [Tue, 9 Dec 2008 19:16:32 +0000 (17:16 -0200)]
Factor out get_fun() and get_val()

Those are useful functions that can be used in other places outside
TestCase class. Now TestSuite class use them too.

15 years agoFactor out most C code from mkmutest to mutest.c
Leandro Lucarella [Wed, 10 Dec 2008 15:50:59 +0000 (13:50 -0200)]
Factor out most C code from mkmutest to mutest.c

This makes easier to improve the tester code, without having to code it as
a shell script embedded string. Now the only generated code is the one
that runs the test suites. You can also implement your own test suites
execution function; just write it in a separated C module and don't use
the mkmutest generator.

15 years agoAdd dynamic Python implementation
Leandro Lucarella [Sun, 7 Dec 2008 20:53:02 +0000 (18:53 -0200)]
Add dynamic Python implementation

A new implementation is added. This implementation is dynamic. Test suites
must be compiled as dynamically linked shared objects (.so) and a Python
program (using ctypes module) inspects the shared objects, looking for
test cases, running them and collecting statistics.

The advantage of this implementation is that test suites are completely
isolated, name clashes between test suites can't be possible. The testing
program is completely decoupled from the test suites, and is less
"hackish", in the sense that no code-generation is needed. You compile
your test suites as shared object, and run the tester on them, that's it.
Is much easier to extend too, since is implemented in Python.

The downside is that the test suites are less "debuggeable", you can't
easily plug a gdb to see what's going on there (AFAIK).  tmp

15 years agoInitial import
Leandro Lucarella [Sat, 6 Dec 2008 16:45:14 +0000 (14:45 -0200)]
Initial import