tests/test-debian-packages.t
author Matt Harbison <matt_harbison@yahoo.com>
Wed, 05 May 2021 17:47:30 -0400
branchstable
changeset 47182 dff19fe2973c
parent 43320 7b638d25b8e4
child 50725 7e5be4a7cda7
permissions -rw-r--r--
run-tests: fix whitelist/blacklist with directories on Windows The file name is resolved with `os.path.relpath()` in the `Test` constructor, which yields `\` on Windows. That doesn't match the `/` separator when using MSYS tools to build the list, and it isn't obvious that this is the problem because directory separators can mostly be used interchangeably. The `--test-list` argument already seems to be properly handled.

#require test-repo slow debhelper debdeps

  $ . "$TESTDIR/helpers-testrepo.sh"
  $ testrepohgenv

Ensure debuild doesn't run the testsuite, as that could get silly.
  $ DEB_BUILD_OPTIONS=nocheck
  $ export DEB_BUILD_OPTIONS
  $ OUTPUTDIR=`pwd`
  $ export OUTPUTDIR

  $ cd "$TESTDIR"/..
  $ make deb > $OUTPUTDIR/build.log 2>&1
  $ cd $OUTPUTDIR
  $ ls *.deb | grep -v 'dbg'
  mercurial_*.deb (glob)
should have .so and .py
  $ dpkg --contents mercurial_*.deb | egrep '(localrepo|parsers)'
  * ./usr/lib/python3/dist-packages/mercurial/cext/parsers*.so (glob)
  * ./usr/lib/python3/dist-packages/mercurial/localrepo.py (glob)
  * ./usr/lib/python3/dist-packages/mercurial/pure/parsers.py (glob)
should have zsh completions
  $ dpkg --contents mercurial_*.deb | egrep 'zsh.*[^/]$'
  * ./usr/share/zsh/vendor-completions/_hg (glob)
should have chg
  $ dpkg --contents mercurial_*.deb | egrep 'chg$'
  * ./usr/bin/chg (glob)
chg should come with a man page
  $ dpkg --contents mercurial_*.deb | egrep 'man.*chg'
  * ./usr/share/man/man1/chg.1.gz (glob)