diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | lib/jitterbug/Builder.pm | 2 | ||||
-rw-r--r-- | t/builder.t | 24 | ||||
-rw-r--r-- | t/data/test.yml | 30 |
4 files changed, 53 insertions, 5 deletions
diff --git a/.gitignore b/.gitignore index 7f68e9f..afad8f5 100644 --- a/.gitignore +++ b/.gitignore @@ -9,7 +9,7 @@ _build META.yml MYMETA.yml *.bak -*.swp +*.sw? Makefile.PL Build jitterbug.db diff --git a/lib/jitterbug/Builder.pm b/lib/jitterbug/Builder.pm index bfcb6c7..0134442 100644 --- a/lib/jitterbug/Builder.pm +++ b/lib/jitterbug/Builder.pm @@ -82,6 +82,7 @@ sub run_task { my $conf = $self->{'conf'}; $desc->{'build'}{'start_time'} = time(); + debug("Build Start"); my $report_path = dir( $conf->{'jitterbug'}{'reports'}{'dir'}, @@ -94,6 +95,7 @@ sub run_task { $task->project->name, ); + debug("Removing $build_dir"); rmtree($build_dir); warn $@ if $@; diff --git a/t/builder.t b/t/builder.t index c952c12..685ad57 100644 --- a/t/builder.t +++ b/t/builder.t @@ -1,15 +1,31 @@ use strict; use warnings; -use Test::More tests => 3; +use Test::Most tests => 6; use jitterbug::Builder; { - local @ARGV = qw(-c blarg.yml); + local @ARGV = qw(-c foo.yml -C); my $b = jitterbug::Builder->new(); isa_ok($b,'jitterbug::Builder'); - is($b->{'configfile'}, 'blarg.yml'); - can_ok($b,'run'); + can_ok($b,qw/run build run_task sleep/); + + is($b->{'configfile'}, 'foo.yml'); + is($b->{'cron'}, 1 ); +} + +{ + local @ARGV = qw(-c blarg.yml -C); + my $b = jitterbug::Builder->new(); + + throws_ok (sub {$b->run}, qr/YAML Error/i, 'nonexistent yaml file throws error'); +} + +{ + local @ARGV = qw(-c t/data/test.yml -C); + my $b = jitterbug::Builder->new(); + is($b->run, 0, '->run returns 0 in cron mode'); + } diff --git a/t/data/test.yml b/t/data/test.yml new file mode 100644 index 0000000..e4144c3 --- /dev/null +++ b/t/data/test.yml @@ -0,0 +1,30 @@ +layout: "main" +logger: "file" +appname: "jitterbug" + +builds_per_feed: 5 +template: "xslate" +engines: + xslate: + path: / + type: text + cache: 0 + +jitterbug: + reports: + dir: /tmp/jitterbug + build: + dir: /tmp/build + build_process: + builder: ./scripts/capsule.sh + on_failure: ./scripts/build-failed.sh + +plugins: + DBIC: + schema: + skip_automake: 1 + pckg: "jitterbug::Schema" + connect_info: + - dbi:SQLite:dbname=jitterbug.db + + |