2008-09-16 4 views
1

Der üblicher Ansatz vonWie TAP :: Harness-Tests in Guile ausgeführt werden?

test: 
    $(PERL) "-MExtUtils::Command::MM" "-e" "test_harness($(TEST_VERBOSE), '$(INCDIRS)')" $(TEST_FILES)

nicht Guile-Skripte ausführen, weil es die zusätzlichen Parameter "-w" Guile passiert.

+0

Sie möchten wahrscheinlich die Antwort aufteilen und als eine tatsächliche Antwort unten veröffentlichen. Das wird besser in Bezug auf das Design der Website funktionieren. –

Antwort

1

Ein möglicher Ansatz besteht darin, Ihr Projekt wie folgt einzurichten.

die Verzeichnisstruktur ist wie folgt:

./project    Your project files 
./project/t/*.t  Your unit test scripts 
./project/t/scripts/* Auxiliary scripts used by your unit tests

Ihre ./project/Makefile enthält folgende Komponenten:

PERL = /usr/bin/perl 
TEST_LIBDIRS = ./lib 
RUN_GUILE_TESTS = ./t/scripts/RunGuileTests.pl 
TEST_FILES = ./t/*.t 

test: 
    $(PERL) -I$(TEST_LIBDIRS) $(RUN_GUILE_TESTS) $(TEST_FILES)

Ihre ./project/t/scripts/RunGuileTests.pl Inhalte sind:

#!/usr/bin/perl -w 
# Run Guile tests - filenames are given as arguments to the script. 

use TAP::Harness; 
my @tests = @ARGV; 
my %args = (
    verbosity => 0, 
    timer => 1, 
    show_count => 1, 
    exec => ['/usr/bin/guile', '-s'], 
    ); 
my $harness = TAP::Harness->new(\%args); 
     $harness->runtests(@tests); 

# End of RunGuileTests.pl

Ihre Guile Testskripte sollten beginnen mit:

#!/usr/bin/guile -s 
!# 
; Description of your tests
Verwandte Themen