tests/test-debian-packages.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 18 Jan 2022 00:19:04 +0100
changeset 48675 a3cf460a6b1b
parent 43320 7b638d25b8e4
child 50722 7e5be4a7cda7
permissions -rw-r--r--
stream-clone: also filter the requirement we put in the bundle 2 We were wrongly putting irrelevant requirements in the bundle and the receiving side was getting confused, treating them as being missing while still putting them in the `requires` file. Leading do corrupted repositories. This changes fix stream-clone behavior regarding format when bundle-2 is involved, so we now also test this cases. Behavior with older version of Mercurial will be fine as they filter the requirements they get from the bundle on their side anyway. Differential Revision: https://phab.mercurial-scm.org/D12084

#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)