diff options
Diffstat (limited to 'tests/logging.sh')
-rw-r--r-- | tests/logging.sh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/logging.sh b/tests/logging.sh new file mode 100644 index 000000000000..096c743fd178 --- /dev/null +++ b/tests/logging.sh @@ -0,0 +1,24 @@ +source common.sh + +rm -f $NIX_STATE_DIR/var/nix/ +$nixstore --gc + +# Produce an escaped log file. +$nixstore --log-type escapes -r -vv $($nixinstantiate dependencies.nix) 2> $TEST_ROOT/log.esc + +# Convert it to an XML representation. +$TOP/src/nix-log2xml/nix-log2xml < $TEST_ROOT/log.esc > $TEST_ROOT/log.xml + +# Is this well-formed XML? +if test -n "$xmllint"; then + $xmllint --noout $TEST_ROOT/log.xml +fi + +# Convert to HTML. +if test -n "$xsltproc"; then + (cd $TOP/src/nix-log2xml && $xsltproc mark-errors.xsl - | $xsltproc log2html.xsl -) < $TEST_ROOT/log.xml > $TEST_ROOT/log.html + # Ideally we would check that the generated HTML is valid... + + # A few checks... + grep "<li>.*<code>.*echo FOO" $TEST_ROOT/log.html +fi |