root/honeyclient/tags/rel/0.9.2/t/honeyclient_agent_driver.t

Revision 130, 4.6 kB (checked in by kindlund, 2 years ago)

sc: merging branch using tags svn+ssh://kindlund@www.honeyclient.org/home/svn/honeyclient/honeyclient/tags/bug/PRE-42 and svn+ssh://kindlund@www.honeyclient.org/home/svn/honeyclient/honeyclient/tags/bug/POST-42

Line 
1 #!/usr/bin/perl -w
2
3 use strict;
4 use Test::More 'no_plan';
5 $| = 1;
6
7
8
9 # =begin testing
10 {
11 # Make sure Log::Log4perl loads
12 BEGIN { use_ok('Log::Log4perl', qw(:nowarn))
13         or diag("Can't load Log::Log4perl package. Check to make sure the package library is correctly listed within the path.");
14        
15         # Suppress all logging messages, since we need clean output for unit testing.
16         Log::Log4perl->init({
17             "log4perl.rootLogger"                               => "DEBUG, Buffer",
18             "log4perl.appender.Buffer"                          => "Log::Log4perl::Appender::TestBuffer",
19             "log4perl.appender.Buffer.min_level"                => "fatal",
20             "log4perl.appender.Buffer.layout"                   => "Log::Log4perl::Layout::PatternLayout",
21             "log4perl.appender.Buffer.layout.ConversionPattern" => "%d{yyyy-MM-dd HH:mm:ss} %5p [%M] (%F:%L) - %m%n",
22         });
23 }
24 require_ok('Log::Log4perl');
25 use Log::Log4perl qw(:easy);
26
27 # Make sure HoneyClient::Util::Config loads.
28 BEGIN { use_ok('HoneyClient::Util::Config', qw(getVar))
29         or diag("Can't load HoneyClient::Util::Config package.  Check to make sure the package library is correctly listed within the path.");
30
31         # Suppress all logging messages, since we need clean output for unit testing.
32         Log::Log4perl->init({
33             "log4perl.rootLogger"                               => "DEBUG, Buffer",
34             "log4perl.appender.Buffer"                          => "Log::Log4perl::Appender::TestBuffer",
35             "log4perl.appender.Buffer.min_level"                => "fatal",
36             "log4perl.appender.Buffer.layout"                   => "Log::Log4perl::Layout::PatternLayout",
37             "log4perl.appender.Buffer.layout.ConversionPattern" => "%d{yyyy-MM-dd HH:mm:ss} %5p [%M] (%F:%L) - %m%n",
38         });
39        
40 }
41 require_ok('HoneyClient::Util::Config');
42 can_ok('HoneyClient::Util::Config', 'getVar');
43 use HoneyClient::Util::Config qw(getVar);
44
45 # Make sure the module loads properly, with the exportable
46 # functions shared.
47 BEGIN { use_ok('HoneyClient::Agent::Driver') or diag("Can't load HoneyClient::Agent::Driver package.  Check to make sure the package library is correctly listed within the path."); }
48 require_ok('HoneyClient::Agent::Driver');
49 can_ok('HoneyClient::Agent::Driver', 'new');
50 can_ok('HoneyClient::Agent::Driver', 'drive');
51 can_ok('HoneyClient::Agent::Driver', 'isFinished');
52 can_ok('HoneyClient::Agent::Driver', 'next');
53 can_ok('HoneyClient::Agent::Driver', 'status');
54 use HoneyClient::Agent::Driver;
55
56 # Suppress all logging messages, since we need clean output for unit testing.
57 Log::Log4perl->init({
58     "log4perl.rootLogger"                               => "DEBUG, Buffer",
59     "log4perl.appender.Buffer"                          => "Log::Log4perl::Appender::TestBuffer",
60     "log4perl.appender.Buffer.min_level"                => "fatal",
61     "log4perl.appender.Buffer.layout"                   => "Log::Log4perl::Layout::PatternLayout",
62     "log4perl.appender.Buffer.layout.ConversionPattern" => "%d{yyyy-MM-dd HH:mm:ss} %5p [%M] (%F:%L) - %m%n",
63 });
64
65 # Make sure we use the exception testing library.
66 require_ok('Test::Exception');
67 can_ok('Test::Exception', 'dies_ok');
68 use Test::Exception;
69
70 # Make sure Storable loads.
71 BEGIN { use_ok('Storable', qw(dclone)) or diag("Can't load Storable package.  Check to make sure the package library is correctly listed within the path."); }
72 require_ok('Storable');
73 can_ok('Storable', 'dclone');
74 use Storable qw(dclone);
75 }
76
77
78
79 # =begin testing
80 {
81 # Create a generic driver, with test state data.
82 my $driver = HoneyClient::Agent::Driver->new(test => 1);
83 is($driver->{test}, 1, "new(test => 1)") or diag("The new() call failed.");
84 }
85
86
87
88 # =begin testing
89 {
90 # Create a generic driver, with test state data.
91 my $driver = HoneyClient::Agent::Driver->new(test => 1);
92 dies_ok {$driver->drive()} 'drive()' or diag("The drive() call failed.  Expected drive() to throw an exception.");
93 }
94
95
96
97 # =begin testing
98 {
99 # Create a generic driver, with test state data.
100 my $driver = HoneyClient::Agent::Driver->new(test => 1);
101 dies_ok {$driver->isFinished()} 'isFinished()' or diag("The isFinished() call failed.  Expected isFinished() to throw an exception.");
102 }
103
104
105
106 # =begin testing
107 {
108 # Create a generic driver, with test state data.
109 my $driver = HoneyClient::Agent::Driver->new(test => 1);
110 dies_ok {$driver->next()} 'next()' or diag("The next() call failed.  Expected next() to throw an exception.");
111 }
112
113
114
115 # =begin testing
116 {
117 # Create a generic driver, with test state data.
118 my $driver = HoneyClient::Agent::Driver->new(test => 1);
119 dies_ok {$driver->status()} 'status()' or diag("The status() call failed.  Expected status() to throw an exception.");
120 }
121
122
123
124
125 1;
Note: See TracBrowser for help on using the browser.