X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F20-mod.t;h=b6db3769568134abaec198c40d35a6b417b53469;hb=92147217516a40b35ca00c8e08939e8aa5478426;hp=50d9db866cac9d996389d610606e7b191dc590b7;hpb=ab352fc19c13fff9561888d8a4b951073278bd10;p=perl%2Fmodules%2FLaTeX-TikZ.git diff --git a/t/20-mod.t b/t/20-mod.t index 50d9db8..b6db376 100644 --- a/t/20-mod.t +++ b/t/20-mod.t @@ -3,7 +3,7 @@ use strict; use warnings; -use Test::More tests => 15 + 2 * 18; +use Test::More tests => 20 + 2 * 22; use LaTeX::TikZ; @@ -45,13 +45,23 @@ check $foo, 'one modded raw set', <<'RES'; \draw [color=red] foo ; RES +my $foo2 = eval { + Tikz->raw('foo') + ->mod('->') +}; +is $@, '', 'creating a modded raw set from a string doesn\'t croak'; + +check $foo2, 'one modded raw set from a string', <<'RES'; +\draw [->] foo ; +RES + sub failed_valid { my ($tc) = @_; qr/Validation failed for '\Q$tc\E'/; } eval { - Tikz->raw('fail') + Tikz->raw([ 'fail' ]) ->mod(Tikz->raw('epic')); }; like $@, failed_valid('LaTeX::TikZ::Mod'), 'trying to use a non LTM mod croaks'; @@ -280,7 +290,7 @@ eval { }; is $@, '', 'creating and adding another width mod doesn\'t croak'; -check $seq, 'mod covering 4', <<'RES'; +check $seq, 'mod covering 5', <<'RES'; \begin{scope} [color=red,raw2] \begin{scope} [line width=4.0pt] \begin{scope} [raw1] @@ -292,3 +302,44 @@ check $seq, 'mod covering 4', <<'RES'; \draw [raw3] baz ; \end{scope} RES + +my ($fred, $fblue) = eval { + map Tikz->fill($_), qw/red blue/; +}; +is $@, '', 'creating two fill mods doesn\'t croak'; + +$seq = eval { + Tikz->seq( + Tikz->raw("foo") + ->mod($fred) + )->mod($fred); +}; +is $@, '', 'creating a structure with two identical fill mods doesn\'t croak'; + +check $seq, 'mod covering 6', <<'RES'; +\draw [fill=red] foo ; +RES + +$seq = eval { + Tikz->seq( + Tikz->raw("foo") + ->mod($fblue) + )->mod($fred); +}; +is $@, '', 'creating a structure with two different fill mods doesn\'t croak'; + +check $seq, 'mod covering 7', <<'RES'; +\draw [fill=red,fill=blue] foo ; +RES + +$seq = eval { + Tikz->seq( + Tikz->raw("foo") + ->mod($red) + )->mod($fred); +}; +is $@, '', 'creating a structure with color and fill mods doesn\'t croak'; + +check $seq, 'mod covering 8', <<'RES'; +\draw [fill=red,color=red] foo ; +RES