App-makebeamerinfo

 view release on metacpan or  search on metacpan

t/full.t  view on Meta::CPAN

{
  # this should prevent cross platform newline problems when reading the test doc above
  local $/ = '
';

  open my $nav_handle, '<', \$nav or die "Cannot open scalar for reading: $!";
  $app->readNav($nav_handle);
}

ok( values %{ $app->{pages} }, "Found pages" );
ok( values %{ $app->{sections} }, "Found sections" );

#=====================
# Test default set

is $app->transition_set, 'default', 'Default to correct set (default)';

my $output = '';
{
  open my $output_handle, '>', \$output or die "Cannot open scalar for writing: $!";
  $app->writeInfo($output_handle);
}

unlike( $output, qr/transition/, 'Default set does not emit transition statments' );
unlike( $output, qr/AvailableTransitions/, 'Default set does not emit AvailableTransitions' );

#=====================
# Test 'none' set

$app->transition_set( 'none' );

$output = '';
{
  open my $output_handle, '>', \$output or die "Cannot open scalar for writing: $!";
  $app->writeInfo($output_handle);
}

unlike( $output, qr/transition/, q{'none' set does not emit transition statments} );
like( $output, qr/AvailableTransitions\s*=\s*[\s*None\s*]/, q{'none' AvailableTransitions is only 'None'} );

#=================
# Test turn set

$app->transition_set('turn');

$output = '';
{
  open my $output_handle, '>', \$output or die "Cannot open scalar for writing: $!";
  $app->writeInfo($output_handle);
}

# remove confusing vertical whitespace
$output    =~ s/[\r\n]//g;
$turn_info =~ s/[\r\n]//g;

is( $output, $turn_info, 'Output as expected' );

#===================
# Other tests

eval { $app->transition_set('does_not_exist') };
ok( $@, 'Selecting unknown transition set dies' );
like( $@, qr/Unknown transition set/, 'Error message' );

done_testing;




( run in 1.863 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )