tests/test-debian-packages.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sun, 11 Feb 2018 16:16:43 -0800
changeset 36110 230489fc0b41
parent 34406 0133ca39c688
child 43310 7574ccd87200
permissions -rw-r--r--
py3: catch TypeError during template operations Two places in this code Python 3 changed from raising ValueError to TypeError. So catch the addition exceptions. IMO this code might be better off performing type sniffing. But I'm not sure the implications of changing that. Differential Revision: https://phab.mercurial-scm.org/D2156

#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-common_*.deb (glob)
  mercurial_*.deb (glob)
main deb should have .so but no .py
  $ dpkg --contents mercurial_*.deb | egrep '(localrepo|parsers)'
  * ./usr/lib/python2.7/dist-packages/mercurial/cext/parsers*.so (glob)
mercurial-common should have py but no .so or pyc
  $ dpkg --contents mercurial-common_*.deb | egrep '(localrepo|parsers.*so)'
  * ./usr/lib/python2.7/dist-packages/mercurial/localrepo.py (glob)
zsh completions should be in the common package
  $ dpkg --contents mercurial-common_*.deb | egrep 'zsh.*[^/]$'
  * ./usr/share/zsh/vendor-completions/_hg (glob)
chg should be installed alongside hg, in the 'mercurial' package
  $ 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)