X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F10-set.t;h=6ff94ef58cb2b1f62ce2ddfe65b76c5243da88c5;hb=33b0a6db16fd5b70df1c151ff720bd07fbf34bdd;hp=f8d4dee883657c2a1a27bf2535dc5e3dba358ab9;hpb=9e8367c3ac993eb5733ab8a1b517d037f8d9b8f4;p=perl%2Fmodules%2FLaTeX-TikZ.git diff --git a/t/10-set.t b/t/10-set.t index f8d4dee..6ff94ef 100644 --- a/t/10-set.t +++ b/t/10-set.t @@ -3,7 +3,7 @@ use strict; use warnings; -use Test::More tests => 12 + 2 * 7; +use Test::More tests => 19 + 2 * 14; use LaTeX::TikZ; @@ -101,17 +101,81 @@ check $seq3, 'two different raw sets and an extended sequence', <<'RES'; \draw foo ; RES +my $seq4 = eval { + Tikz->seq; +}; +is $@, '', 'creating an empty sequence doesn\'t croak'; + +check $seq4, 'an empty sequence', ''; + +$seq4 = eval { + Tikz->seq(Tikz->seq); +}; +is $@, '', 'creating a sequence that contains an empty sequence doesn\'t croak'; + +check $seq4, 'a sequence that contains an empty sequence', ''; + +$seq4 = eval { + Tikz->seq($foo, Tikz->seq); +}; +is $@, '', + 'creating a sequence that contains a set and an empty sequence doesn\'t croak'; + +check $seq4, 'a sequence that contains a set and an empty sequence', <<'RES'; +\draw foo ; +RES + +$seq4 = eval { + Tikz->seq(Tikz->seq, $foo); +}; +is $@, '', + 'creating a sequence that contains an empty sequence and a set doesn\'t croak'; + +check $seq4, 'a sequence that contains an empty sequence and a set', <<'RES'; +\draw foo ; +RES + +$seq4 = eval { + Tikz->seq($foo, $bar, Tikz->seq); +}; +is $@, '', +'creating a sequence that contains 2 sets and an empty sequence doesn\'t croak'; + +check $seq4, 'a sequence that contains 2 sets and an empty sequence', <<'RES'; +\draw foo ; +\draw bar ; +RES + +$seq4 = eval { + Tikz->seq($foo, Tikz->seq, $bar); +}; +is $@, '', 'creating a sequence that contains a set, an empty sequence, a set doesn\'t croak'; + +check $seq4, 'a sequence that contains a set, an empty sequence, a set',<<'RES'; +\draw foo ; +\draw bar ; +RES + +$seq4 = eval { + Tikz->seq(Tikz->seq, $foo, $bar); +}; +is $@, '', +'creating a sequence that contains an empty sequence and 2 sets'; + +check $seq4, 'a sequence that contains an empty sequence and 2 sets', <<'RES'; +\draw foo ; +\draw bar ; +RES + sub failed_valid { my ($tc) = @_; qr/Validation failed for '\Q$tc\E'/; } -my $err_path = qr/does not pass the type constraint because: Validation failed for 'Maybe\[ArrayRef\[LaTeX::TikZ::Set::Path::Elements\]\]/; - eval { Tikz->path($foo, $seq2); }; -like $@, failed_valid('Maybe[ArrayRef[LaTeX::TikZ::Set::Path::Elements]]'), +like $@, failed_valid('Maybe[ArrayRef[LaTeX::TikZ::Set::Op]]'), 'creating a path that contains a sequence croaks'; my $path = eval { @@ -128,7 +192,7 @@ eval { }; is $@, '', 'adding something to a path set doesn\'t croak'; -check [ $path, $path ], 'two identical path sets', <<'RES'; +check Tikz->seq($path, $path), 'two identical path sets', <<'RES'; \draw foo bar baz foo ; \draw foo bar baz foo ; RES @@ -136,5 +200,5 @@ RES eval { $path->add($seq2); }; -like $@, failed_valid('LaTeX::TikZ::Set::Path::Elements'), +like $@, failed_valid('LaTeX::TikZ::Set::Op'), 'adding a sequence to a path croaks';