use Test::More tests => 40;
use strict;
use warnings;
use_ok( 'Image::ANSI::Font' );
use_ok( 'Image::ANSI::Font::8x8' );
use_ok( 'Image::ANSI::Font::8x16' );
{
my $font = Image::ANSI::Font->new;
isa_ok( $font, 'Image::ANSI::Font' );
is( $font->characters, 0 );
is( scalar @{ $font->chars }, 0 );
$font->char( 0, [ 255 ] );
$font->width( 8 );
is( $font->width, 8 );
is( $font->height, 1 );
is( $font->characters, 1 );
is( scalar @{ $font->chars }, 1 );
$font->clear;
is( $font->characters, 0 );
is( scalar @{ $font->chars }, 0 );
$font->chars( [ [ 255 ] ] );
is( $font->characters, 1 );
is( scalar @{ $font->chars }, 1 );
}
{
my $font = Image::ANSI::Font::8x8->new;
isa_ok( $font, 'Image::ANSI::Font::8x8' );
isa_ok( $font, 'Image::ANSI::Font' );
is( $font->width, 8 );
is( $font->height, 8 );
is( $font->characters, 256 );
is( scalar @{ $font->chars }, 256 );
is( ref $font->intensity_map, 'ARRAY' );
is_deeply( $font->char( 0 ), [ ( 0 ) x 8 ] );
my $gd = $font->as_gd;
isa_ok( $gd, 'GD::Font' );
is( $gd->width, 8 );
is( $gd->height, 8 );
is( $gd->nchars, 256 );
$font->char( 0, [ ( 1 ) x 8 ] );
is_deeply( $font->char( 0 ), [ ( 1 ) x 8 ] );
}
{
my $font = Image::ANSI::Font::8x16->new;
isa_ok( $font, 'Image::ANSI::Font::8x16' );
isa_ok( $font, 'Image::ANSI::Font' );
is( $font->width, 8 );
is( $font->height, 16 );
is( $font->characters, 256 );
is( scalar @{ $font->chars }, 256 );
is( ref $font->intensity_map, 'ARRAY' );
is_deeply( $font->char( 0 ), [ ( 0 ) x 16 ] );
my $gd = $font->as_gd;
isa_ok( $gd, 'GD::Font' );
is( $gd->width, 8 );
is( $gd->height, 16 );
is( $gd->nchars, 256 );
$font->char( 0, [ ( 1 ) x 16 ] );
is_deeply( $font->char( 0 ), [ ( 1 ) x 16 ] );
}