49
|
1 package IMPL::Test::HarnessRunner;
|
|
2 use strict;
|
|
3 use warnings;
|
|
4
|
166
|
5 use parent qw(IMPL::Object IMPL::Object::Autofill IMPL::Object::Serializable);
|
49
|
6 use IMPL::Class::Property;
|
|
7 use Test::Harness;
|
|
8
|
|
9 __PACKAGE__->PassThroughArgs;
|
|
10
|
|
11 BEGIN {
|
|
12 public property Strap => prop_all;
|
|
13 }
|
|
14
|
|
15 sub CTOR {
|
|
16 my $this = shift;
|
|
17
|
|
18 die new IMPL::InvalidArgumentException("The Strap parameter must be specified") unless $this->Strap;
|
|
19 }
|
|
20
|
|
21 sub RunTests {
|
|
22 my ($this,@files) = @_;
|
|
23
|
|
24 local $Test::Harness::Strap = $this->Strap;
|
|
25
|
|
26 return runtests(@files);
|
|
27 }
|
|
28
|
|
29 sub ExecuteTests {
|
|
30 my ($this,%args) = @_;
|
|
31
|
|
32 local $Test::Harness::Strap = $this->Strap;
|
|
33
|
|
34 return Test::Harness::execute_tests(%args);
|
|
35 }
|
|
36
|
|
37 1;
|