diff options
Diffstat (limited to 't/tests/deps.t')
-rw-r--r-- | t/tests/deps.t | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/t/tests/deps.t b/t/tests/deps.t new file mode 100644 index 0000000..2fde79b --- /dev/null +++ b/t/tests/deps.t @@ -0,0 +1,48 @@ +# -*- mode: perl6 -*- +use Test; +use lib 't/lib'; +use Test::WebCoso; +use File::Temp; +use WebCoso; +use WebCoso::FileSet; + +my $testdir = tempdir.IO; +my $srcdir = $testdir.child('src'); +my $destdir = $testdir.child('dst'); + +$srcdir.mkdir; +$destdir.mkdir; + +my $wc = WebCoso.new(:$srcdir,:$destdir); +$wc.save-deps( + 'foo','document','du.xml', + WebCoso::FileSet.new(files-hash=>{it=>['some.xsl']}), +); + +my $no-deps = $wc.load-deps('bar','random','txt'); +ok($no-deps.files.elems == 0, + 'no deps is empty'); + +my $deps = $wc.load-deps('foo','document','du.xml'); +cmp-files( + $deps, + { it => { $^x.path eq 'some.xsl' } }, + 'deps round-tripped', +); + +my @d; +$no-deps.set-for-lang('x',@d); +dd $no-deps; +dd $no-deps.export-hash; +$wc.save-deps('bar','random','txt',$no-deps); +say $srcdir.child('deps.json').IO.slurp; +my $empty-deps = $wc.load-deps('bar','random','txt'); +dd $empty-deps; +cmp-files( + $deps, + { x=> {$^x.elems == 0} }, + 'empty deps is empty', +); + + +done-testing; |