blob: 1ef8bf9c1dfb2c22b615c38a014853d81728a02a [file] [log] [blame]
use strict;
use warnings;
use Test::More;
use Test::XML::Loy;
use FindBin;
BEGIN {
unshift @INC, "$FindBin::Bin/../lib";
};
use_ok('Test::KorAP::XML::TEI','korap_tempfile', 'i5_template', 'test_tei2korapxml');
subtest 'korap_tempfile' => sub {
my ($fh, $filename) = korap_tempfile('test');
ok($fh, 'Filehandle created');
ok($filename, 'Filename returned');
close($fh);
like($filename, qr!KorAP-XML-TEI_test_.+?\.tmp$!, 'Filename pattern');
($fh, $filename) = korap_tempfile();
ok($fh, 'Filehandle created');
ok($filename, 'Filename returned');
close($fh);
like($filename, qr!KorAP-XML-TEI_.+?\.tmp$!, 'Filename pattern');
};
subtest 'i5_template' => sub {
my $tpl = i5_template();
my $t = Test::XML::Loy->new($tpl);
$t->text_is('korpusSigle', 'AAA')
->text_is('dokumentSigle', 'AAA/BBB')
->text_is('textSigle', 'AAA/BBB.00000')
->text_like('text', qr!Lorem ipsum!)
;
$tpl = i5_template(
korpusSigle => 'BBB',
dokumentSigle => 'BBB/CCC',
textSigle => 'BBB/CCC.11111',
text => 'Ein Versuch'
);
$t = Test::XML::Loy->new($tpl);
$t->text_is('korpusSigle', 'BBB')
->text_is('dokumentSigle', 'BBB/CCC')
->text_is('textSigle', 'BBB/CCC.11111')
->text_unlike('text', qr!Lorem ipsum!)
->text_like('text', qr!Ein Versuch!)
;
};
subtest 'test_tei2korapxml_i5_template' => sub {
test_tei2korapxml(
template => {
text => 'Das ist ein gutes Beispiel',
korpusSigle => 'a',
dokumentSigle => 'a/b',
textSigle => 'a/b.1'
},
param => '-ti'
)
->stderr_like(qr!tei2korapxml:.*? text_id=a_b\.1!)
->file_exists('a/b/1/header.xml')
->file_exists('a/b/header.xml')
->file_exists('a/header.xml')
->unzip_xml('a/b/1/data.xml')
->attr_is('raw_text', 'docid', 'a_b.1')
->text_is('text', 'Das ist ein gutes Beispiel');
};
done_testing;