1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-19 23:03:53 -04:00
nix/tests/logging.sh

35 lines
977 B
Bash
Raw Normal View History

2006-03-01 08:25:08 -05:00
source common.sh
clearStore
2006-03-01 08:25:08 -05:00
# Produce an escaped log file.
set -x
2014-02-26 11:58:53 -05:00
path=$(nix-build --log-type escapes -vv dependencies.nix --no-out-link 2> $TEST_ROOT/log.esc)
2006-03-01 08:25:08 -05:00
# Convert it to an XML representation.
nix-log2xml < $TEST_ROOT/log.esc > $TEST_ROOT/log.xml
2006-03-01 08:25:08 -05:00
# Is this well-formed XML?
2006-03-01 11:03:32 -05:00
if test "$xmllint" != "false"; then
2014-02-01 10:08:59 -05:00
$xmllint --noout $TEST_ROOT/log.xml || fail "malformed XML"
2006-03-01 08:25:08 -05:00
fi
# Convert to HTML.
2006-03-01 11:03:32 -05:00
if test "$xsltproc" != "false"; then
(cd $datadir/nix/log2html && $xsltproc mark-errors.xsl - | $xsltproc log2html.xsl -) < $TEST_ROOT/log.xml > $TEST_ROOT/log.html
2006-03-01 08:25:08 -05:00
# Ideally we would check that the generated HTML is valid...
# A few checks...
grep "<code>.*FOO" $TEST_ROOT/log.html || fail "bad HTML output"
2006-03-01 08:25:08 -05:00
fi
2014-02-26 11:58:53 -05:00
# Test nix-store -l.
[ "$(nix-store -l $path)" = FOO ]
# Test compressed logs.
clearStore
rm -rf $NIX_LOG_DIR
! nix-store -l $path
nix-build dependencies.nix --no-out-link --option build-compress-log true
[ "$(nix-store -l $path)" = FOO ]