1Rex::Test::Base(3) User Contributed Perl Documentation Rex::Test::Base(3)
2
3
4
6 Rex::Test::Base - Basic Test Module
7
9 This is a basic test module to test your code with the help of local
10 VMs. You can place your tests in the "t" directory.
11
13 use Rex::Test::Base;
14 use Data::Dumper;
15 use Rex -base;
16
17 test {
18 my $t = shift;
19
20 $t->name("ubuntu test");
21
22 $t->base_vm("http://box.rexify.org/box/ubuntu-server-12.10-amd64.ova");
23 $t->vm_auth(user => "root", password => "box");
24
25 $t->run_task("setup");
26
27 $t->has_package("vim");
28 $t->has_package("ntp");
29 $t->has_package("unzip");
30
31 $t->has_file("/etc/ntp.conf");
32
33 $t->has_service_running("ntp");
34
35 $t->has_content("/etc/passwd", qr{root:x:0:}ms);
36
37 run "ls -l";
38 $t->ok($? == 0, "ls -l returns success.");
39
40 $t->finish;
41 };
42
43 1; # last line
44
46 new(name => $test_name)
47 Constructor if used in OO mode.
48
49 my $test = Rex::Test::Base->new(name => "test_name");
50
51 name($name)
52 The name of the test. A VM called $name will be created for each test.
53 If the VM already exists, Rex will try to reuse it.
54
55 memory($amount)
56 The amount of memory the VM should use, in Megabytes.
57
58 cpus($number)
59 The number of CPUs the VM should use.
60
61 vm_auth(%auth)
62 Authentication options for the VM. It accepts the same parameters as
63 "Rex::Box::Base->auth()".
64
65 base_vm($vm)
66 The URL to a base image to be used for the test VM.
67
68 redirect_port($port)
69 Redirect local $port to the VM's SSH port (default: 2222).
70
71 run_task($task)
72 The task to run on the test VM. You can run multiple tasks by passing
73 an array reference.
74
76 has_content($file, $regexp)
77 Test if the content of $file matches against $regexp.
78
79 has_dir($path)
80 Test if $path is present and is a directory.
81
82 has_file($file)
83 Test if $file is present.
84
85 has_package($package, $version)
86 Test if $package is installed, optionally at $version.
87
88 has_service_running($service)
89 Test if $service is running.
90
91 has_service_stopped($service)
92 Test if $service is stopped.
93
94 has_stat($file, $stat)
95 Test if $file has properties described in hash reference $stat. List of
96 supported checks:
97
98 group
99 owner
100
101
102
103perl v5.36.0 2022-07-20 Rex::Test::Base(3)