tests/test-debian-packages.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 07 Mar 2024 10:55:22 +0100
changeset 51531 f85f23f1479b
parent 50725 7e5be4a7cda7
permissions -rw-r--r--
branchcache: skip entries that are topological heads in the on disk file In the majority of cases, topological heads are also branch heads. We have efficient way to get the topological heads and efficient way to retrieve their branch information. So there is little value in putting them in the branch cache file explicitly. On the contrary, writing them explicitly tend to create very large cache file that are inefficient to read and update. So the branch cache v3 format is no longer including them. This changeset focus on the format aspect and have no focus on the performance aspect. We will cover that later.

#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 | grep -E '(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 | grep -E 'zsh.*[^/]$'
  * ./usr/share/zsh/vendor-completions/_hg (glob)
should have chg
  $ dpkg --contents mercurial_*.deb | grep -E 'chg$'
  * ./usr/bin/chg (glob)
chg should come with a man page
  $ dpkg --contents mercurial_*.deb | grep -E 'man.*chg'
  * ./usr/share/man/man1/chg.1.gz (glob)