#!/usr/bin/perl -w
#==============================================================================
# description:
#------------------------------------------------------------------------------
# A simple Perl script to test the perl-Hardware-UPS-Perl distribution.
# The following tests are included so far:
#
# - setting up a logger with output on STDERR
# - setting up a PID file
# - initializing a connection object
# - initializing a driver object
#
#==============================================================================
#==============================================================================
# Entries for revision control:
#------------------------------------------------------------------------------
# Revision : $Revision: 1.1 $
# Author : $Author: creile $
# Last Modified On: $Date: 2007/04/17 19:48:21 $
# Status : $State: Exp $
#------------------------------------------------------------------------------
# Modifications :
#------------------------------------------------------------------------------
#
# $Log: simple.t,v $
# Revision 1.1 2007/04/17 19:48:21 creile
# initial revision.
#
#
#==============================================================================
#==============================================================================
# packages required:
#------------------------------------------------------------------------------
#
# Test::Simple - Basic utilities for writing tests
# vars - Perl pragma to predeclare global variable
# names
#
# Hardware::UPS::Perl::Connection - importing Hardware::UPS::Perl connection
# Hardware::UPS::Perl::Constants - importing Hardware::UPS::Perl constants
# Hardware::UPS::Perl::Driver - importing Hardware::UPS::Perl driver
# Hardware::UPS::Perl::Logging - importing Hardware::UPS::Perl methods
# dealing with log files
# Hardware::UPS::Perl::PID - importing Hardware::UPS::Perl methods
# dealing with PID files
#
#==============================================================================
use Test::Simple tests => 4;
use Hardware::UPS::Perl::Connection;
use Hardware::UPS::Perl::Constants qw(
UPSSCRIPT
);
use Hardware::UPS::Perl::Driver;
use Hardware::UPS::Perl::Logging;
use Hardware::UPS::Perl::PID;
#==============================================================================
# defining global variables:
#------------------------------------------------------------------------------
#
# $Package - the package to test
# $Logger - the UPS logging object
# $Connection - the connection object
# $Driver - the driver object
# $Pid - the PID file object
#
#==============================================================================
use vars qw(
$Package
$Logger
$Pid
$Connection
$Driver
);
#==============================================================================
# defining subroutines:
#==============================================================================
sub Check {
# subroutine to check the reference created
#
# parameters: $ref (input) - the reference
# $package (input) - the package the reference belongs to
# input as hidden local variables:
my $ref = shift;
my $package = shift;
return defined($ref) and (ref($ref) eq $package);
} # end of subdourine "Check"
#==============================================================================
# start of main body:
#==============================================================================
#
# testing the logger
#
$Package = 'Hardware::UPS::Perl::Logging';
$Logger = Hardware::UPS::Perl::Logging->new();
ok( Check($Logger, $Package), "$Package\->new() works" );
#
# testing the OO pid
#
$Package = 'Hardware::UPS::Perl::PID';
$PID = Hardware::UPS::Perl::PID->new({
PIDFile => "/tmp/${\(UPSSCRIPT)}.pid",
Logger => $Logger,
});
ok( Check($PID, $Package), "$Package\->new() works" );
#
# testing setting up a connection
#
$Package = 'Hardware::UPS::Perl::Connection';
$Connection = Hardware::UPS::Perl::Connection->new({
Logger => $Logger
});
ok( Check($Connection, $Package), "$Package\->new() works");
#
# testing setting up a driver
#
$Package = 'Hardware::UPS::Perl::Driver';
$Driver = Hardware::UPS::Perl::Driver->new({
Logger => $Logger
});
ok( Check($Driver, $Package), "$Package\->new() works" );
# exiting
exit 0