1use strict; 2use warnings; 3use Test::More 0.88; 4require './t/TestUtils.pm'; 5t::TestUtils->import(); 6 7# Test OO interface 8 9SKIP: { 10 skip_interactive(); 11 12 use blib; 13 require IO::Pager; 14 require IO::Pager::Buffered; 15 { 16# my $BOB = new IO::Pager::Buffered or die "Failed to create PAGER FH $!"; 17 my $BOB = new IO::Pager local *STDOUT, 'Buffered' or die "Failed to create PAGER FH $!"; 18 19 isa_ok $BOB, 'IO::Pager::Buffered'; 20 21 $BOB->print("OO factory filehandle\n") foreach 1..25; 22 $BOB->print("\nEnd of text, try pressing 'Q' to exit.\n"); 23 } 24 25 select STDERR; 26 my $A1 = prompt("\nDid you see 'OO factory filehandle' in your pager? [Yn]"); 27 ok is_yes($A1), 'OO, factory instantiation'; 28 29 require IO::Pager::Unbuffered; 30 31 { 32 my $BOB = new IO::Pager::Unbuffered or die "Failed to create PAGER FH $!"; 33 34 isa_ok $BOB, 'IO::Pager::Unbuffered'; 35 36 $BOB->say("OO subclass filehandle") foreach 1..25; 37 $BOB->say("\nEnd of text, try pressing 'Q' to exit."); 38 #XXX Close required because pager is not terminated on DESTROY 39 $BOB->close(); 40 } 41 42 my $A2 = prompt("\nDid you see 'OO subclass filehandle' in your pager? [Yn]"); 43 ok is_yes($A2), 'OO, subclass instantiation'; 44} 45 46done_testing; 47