package tests::UICommandWidgetTest;
use strict;
use base qw/ Lire::Test::TestCase /;
use Lire::Config::TypeSpec;
use Lire::Test::CursesUIDriver;
use Curses::UI;
sub set_up {
my $self = $_[0];
$self->SUPER::set_up();
$self->{'driver'} = new Lire::Test::CursesUIDriver();
$self->{'driver'}->setup_curses_ui();
$self->{'ui'} = new Curses::UI();
$self->{'driver'}->set_curses_ui( $self->{'ui'} );
$self->{'window'} = $self->{'ui'}->add( 'window', 'Window' );
my $spec = new Lire::Config::ConfigSpec();
$spec->add( new Lire::Config::CommandSpec( 'name' => 'cmd_param' ) );
$self->{'cmd_param'} = $spec->get( 'cmd_param' )->instance( 'value' => 'ls');
$self->{'spec'} = $spec;
return;
}
sub tear_down {
my $self = $_[0];
$self->SUPER::tear_down();
$self->{'driver'}->teardown_curses_ui();
return;
}
sub test_new {
my $self = $_[0];
my $widget = $self->{'window'}->add( 'cmd_widget', 'Lire::UI::CommandWidget',
'value' => $self->{'cmd_param'} );
$self->assert_isa( 'Lire::UI::ExecutableWidget', $widget );
$self->assert_isa( 'Lire::UI::CommandWidget', $widget, );
}
1;
syntax highlighted by Code2HTML, v. 0.9.1