# $Id: Ping.pm,v 1.14 2006-10-25 10:49:37 mike Exp $ # See the "Main" test package for documentation package ZOOM::IRSpy::Test::Ping; use 5.008; use strict; use warnings; use ZOOM::IRSpy::Test; our @ISA = qw(ZOOM::IRSpy::Test); sub start { my $class = shift(); my($conn) = @_; $conn->irspy_connect(undef, {}, ZOOM::Event::CONNECT, \&connected, exception => \¬_connected); } sub connected { maybe_connected(@_, 1) } sub not_connected { maybe_connected(@_, 0) } sub maybe_connected { my($conn, $task, $__UNUSED_udata, $event, $ok) = @_; $conn->log("irspy_test", ($ok ? "" : "not "), "connected"); my $rec = $conn->record(); $rec->append_entry("irspy:status", "" . isodate(time()) . ""); $conn->option(pod_omit => 1) if !$ok; return ZOOM::IRSpy::Status::TASK_DONE; } 1;