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;