aboutsummaryrefslogtreecommitdiffstats
path: root/examples/qtest
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2019-01-07 18:51:34 +0100
committerJay Berkenbilt <ejb@ql.org>2019-01-07 18:51:34 +0100
commite6f1e547718079ebc2b216a62a1e40af2ea1d471 (patch)
tree0669f4d60366cf1665148944b84f817dea9e718c /examples/qtest
parent8f6f7cec502f2bdf15d1b3aa6f0be98f95c64062 (diff)
downloadqpdf-e6f1e547718079ebc2b216a62a1e40af2ea1d471.tar.zst
Work around test fragility on Windows
Diffstat (limited to 'examples/qtest')
-rw-r--r--examples/qtest/create.test26
1 files changed, 24 insertions, 2 deletions
diff --git a/examples/qtest/create.test b/examples/qtest/create.test
index f83509e2..ca5fbd23 100644
--- a/examples/qtest/create.test
+++ b/examples/qtest/create.test
@@ -11,9 +11,30 @@ cleanup();
my $td = new TestDriver('create');
+# This test is fragile on Windows for unknown reasons. Sometimes the
+# output of the command is truncated even though it works and exits
+# normally.
+
+for (my $i = 0; $i < 5; ++$i)
+{
+ unlink "tmp.out";
+ if ((system("pdf-create a.pdf > tmp.out") == 0) &&
+ open(F, "<check.tmpout"))
+ {
+ local $/ = undef;
+ my $text = <F>;
+ close(F);
+ if ($text =~ m/passed/)
+ {
+ last;
+ }
+ }
+ sleep 1;
+}
+
$td->runtest("create a simple PDF",
- {$td->COMMAND => "pdf-create a.pdf"},
- {$td->FILE => "create.out", $td->EXIT_STATUS => 0},
+ {$td->FILE => "tmp.out"},
+ {$td->FILE => "create.out"},
$td->NORMALIZE_NEWLINES);
cleanup();
@@ -23,4 +44,5 @@ $td->report(1);
sub cleanup
{
unlink "a.pdf";
+ unlink "tmp.out";
}