Fix undef warnings from Text::ParseWords when running tests with -w
[dbsrgits/SQL-Translator.git] / t / 09sqlt-diagram.t
1 use strict;
2 use warnings;
3
4 use File::Spec::Functions qw(catfile updir tmpdir);
5 use File::Temp qw(mktemp);
6 use FindBin qw($Bin);
7 use Test::More;
8 use Test::SQL::Translator qw(maybe_plan);
9 use Text::ParseWords qw(shellwords);
10
11 BEGIN {
12     maybe_plan(
13         3,
14         'SQL::Translator::Parser::MySQL',
15         'SQL::Translator::Producer::Diagram',
16         'Graph::Directed',
17     );
18 }
19
20 my @script = qw(script sqlt-diagram);
21 my @data = qw(data mysql create2.sql);
22
23 my $sqlt_diagram = catfile($Bin, updir, @script);
24 my $test_data = catfile($Bin, @data);
25
26 my $tmp = mktemp('sqlXXXXX');
27
28 ok(-e $sqlt_diagram);
29 my @cmd = ($^X, shellwords($ENV{HARNESS_PERL_SWITCHES}||''), $sqlt_diagram, "-d", "MySQL", "-o", $tmp, $test_data);
30 eval { system(@cmd); };
31 ok(!$@ && ($? == 0));
32 ok(-e $tmp);
33 eval { unlink $tmp; };