#!/usr/bin/perl
# vim: set ft=perl:
-use Test::More tests => 31;
+use Test::More;
use SQL::Translator;
-use SQL::Translator::Parser::Excel 'parse';
use SQL::Translator::Schema::Constants;
+use Test::SQL::Translator qw(maybe_plan);
+
+BEGIN {
+ maybe_plan(31, 'SQL::Translator::Parser::Excel');
+ SQL::Translator::Parser::Excel->import('parse');
+}
my $tr = SQL::Translator->new(parser => "Excel");
my $t = $tr->translate(filename => "t/data/Excel/t.xls");
is( $f3->is_primary_key, 0, 'Field is not PK' );
my $f4 = shift @fields;
-is( $f4->name, 'math', 'Fourth field name is "math"' );
-is( lc $f4->data_type, 'float', 'Data type is "float"' );
-is( $f4->size, '3,1', 'Size is "3,1"' );
-is( $f4->is_primary_key, 0, 'Field is not PK' );
+TODO: {
+ eval { require Spreadsheet::ParseExcel };
+ todo_skip "Bug in Spreadsheet::ParseExcel, http://rt.cpan.org/Public/Bug/Display.html?id=39892", 4
+ if ( $Spreadsheet::ParseExcel::VERSION > 0.32 and $Spreadsheet::ParseExcel::VERSION < 0.41 );
+
+ is( $f4->name, 'math', 'Fourth field name is "math"' );
+ is( lc $f4->data_type, 'float', 'Data type is "float"' );
+ is( $f4->size, '3,1', 'Size is "3,1"' );
+ is( $f4->is_primary_key, 0, 'Field is not PK' );
+}
my $f5 = shift @fields;
is( $f5->name, 'bitmap', 'Fifth field name is "bitmap"' );
is( $f6->is_primary_key, 0, 'Field is not PK' );
my $f7 = shift @fields;
-is( $f7->name, 'silly_field_with_random_characters',
+is( $f7->name, 'silly_field_with_random_characters',
'Seventh field name is "silly_field_with_random_characters"' );
is( lc $f7->data_type, 'char', 'Data type is "CHAR"' );
is( $f7->size, 11, 'Size is "11"' );