#!/usr/bin/perl
use warnings;
use strict;
use lib qw(./lib);
use Test::More tests => 13;
use Bot::BasicBot::Pluggable;
use Bot::BasicBot::Pluggable::Module;
our $store;
no warnings 'redefine';
sub Bot::BasicBot::Pluggable::Module::store {
$store ||= Bot::BasicBot::Pluggable::Store->new;
}
ok( my $base = Bot::BasicBot::Pluggable::Module->new(), "created base module" );
ok( $base->var( 'test', 'value' ), "set variable" );
ok( $base->var('test') eq 'value', 'got variable' );
ok( $base = Bot::BasicBot::Pluggable::Module->new(),
"created new base module" );
ok( $base->var('test') eq 'value', 'got old variable' );
ok( $base->unset('test'), 'unset variable' );
ok( !defined( $base->var('test') ), "it's gone" );
# very hard to do anything but check existence of these methods
ok( $base->can($_), "'$_' exists" ) for (qw(said connected tick emoted init));
ok( $base->help, "help returns something" );