1fe77f12c286db7433a98e6373657c09f587f462
[mythtv-status.git] / t / 05-v0.20-clean.t
1 #!usr/bin/perl -w
2
3 use strict;
4 use Test::More tests => 42;
5 use FindBin qw/$Bin/;
6
7 my $xml = "$Bin/xml/single-filesytem-0.20.2.xml";
8
9 # Test that the blurb of how to get help is printed.
10 my $out = `$Bin/../bin/mythtv-status --file $xml 2>&1`;
11
12 #diag($out);
13
14 like($out, qr/MythTV status for localhost/, 'Header is present');
15 like($out, qr/^Status..........: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present');
16 like($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present');
17 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
18 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
19 like($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is present (the news)');
20
21 # Test that the status isn't present if --nostatus is passed.
22
23 $out = `$Bin/../bin/mythtv-status --file $xml --nostatus 2>&1`;
24
25 like($out, qr/MythTV status for localhost/, 'Header is present');
26 unlike($out, qr/^Status\.*:/m, 'Status line is not present');
27 like($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present');
28 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
29 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
30 like($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is present (the news)');
31
32 # Test that the disk space isn't present if --nototal-disk-space is passed.
33
34 $out = `$Bin/../bin/mythtv-status --file $xml --nototal-disk-space 2>&1`;
35
36 like($out, qr/MythTV status for localhost/, 'Header is present');
37 like($out, qr/^Status\.*: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present');
38 unlike($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is not present');
39 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
40 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
41 like($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is present (the news)');
42
43 # Test that the encoders details aren't present if --noencoders is passed.
44
45 $out = `$Bin/../bin/mythtv-status --file $xml --noencoders 2>&1`;
46
47 like($out, qr/MythTV status for localhost/, 'Header is present');
48 like($out, qr/^Status\.*: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present');
49 like($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present');
50 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
51 unlike($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is not present');
52 like($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is present (the news)');
53
54 # Test that the recording now details aren't present if --norecording-now is passed.
55
56 $out = `$Bin/../bin/mythtv-status --file $xml --norecording-now 2>&1`;
57
58 like($out, qr/MythTV status for localhost/, 'Header is present');
59 like($out, qr/^Status\.*: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present');
60 like($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present');
61 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
62 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
63 unlike($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is not present');
64
65 # Test that the encoder details for a recording are present if --encoder-details is passed.
66
67 $out = `$Bin/../bin/mythtv-status --file $xml --encoder-details 2>&1`;
68
69 #diag($out);
70
71 like($out, qr/MythTV status for localhost/, 'Header is present');
72 like($out, qr/^Status..........: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present');
73 like($out, qr/^Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present');
74 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
75 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
76 like($out, qr/^Recording Now:\s+3 News \(TV3, Enc: 9, Chan: 3\) Ends: 19:00:00$/m, 'Recording now is present (the news) with encoder details');
77
78 # Test that the encoder details for a recording are present if --encoder-details is passed.
79
80 $out = `$Bin/../bin/mythtv-status --file $xml --oneliner-bullets 2>&1`;
81
82 #diag($out);
83
84 like($out, qr/MythTV status for localhost/, 'Header is present');
85 like($out, qr/^\* Status..........: Thu Nov 29 2007, 6:43 PM$/m, 'Status line is present (with bullet)');
86 like($out, qr/^\* Total Disk Space: Total space is 100\.0 GB, with 72\.2 GB used \(72.2%\)$/m, 'Total disk space is present (with bullet)');
87 unlike($out, qr/^Guide Data\.*:/m, 'Guide data warning is not present');
88 like($out, qr/^Encoders:\s+cerberus \(9\) - Recording$/m, 'Encoder is present, and recording');
89 like($out, qr/^Recording Now:\s+3 News \(TV3\) Ends: 19:00:00$/m, 'Recording now is present (the news)');