##// END OF EJS Templates
localrepo: use context manager for lock and transaction in commitctx()...
localrepo: use context manager for lock and transaction in commitctx() Differential Revision: https://phab.mercurial-scm.org/D5624

File last commit:

r33595:283a7da6 stable
r41400:0132221c default
Show More
test-mac-packages.t
71 lines | 3.1 KiB | text/troff | Tads3Lexer
/ tests / test-mac-packages.t
Kevin Bullock
osx: create a modern package including manpages...
r29027 #require test-repo slow osx osxpackaging
timeless
tests: silence test-repo obsolete warning...
r29219
$ . "$TESTDIR/helpers-testrepo.sh"
Yuya Nishihara
tests: alias syshg and syshgenv so they can be switched conditionally
r33199 $ testrepohgenv
timeless
tests: silence test-repo obsolete warning...
r29219
Augie Fackler
osx: use more paranoid quoting in test
r31610 $ OUTPUTDIR="`pwd`"
Augie Fackler
tests: add test for Mac OS X package construction
r29025 $ export OUTPUTDIR
$ KEEPMPKG=yes
$ export KEEPMPKG
$ cd "$TESTDIR"/..
Augie Fackler
osx: new script for generating OS X package versions...
r33595 $ contrib/genosxversion.py --selftest ignoredarg
Augie Fackler
osx: use more paranoid quoting in test
r31610 $ make osx > "$OUTPUTDIR/build.log" 2>&1
$ cd "$OUTPUTDIR"
Kevin Bullock
osx: create a modern package including manpages...
r29027 $ ls -d *.pkg
Mercurial-*-macosx10.*.pkg (glob)
$ xar -xf Mercurial*.pkg
Augie Fackler
tests: add test for Mac OS X package construction
r29025
Gather list of all installed files:
Kevin Bullock
osx: create a modern package including manpages...
r29027 $ lsbom mercurial.pkg/Bom > boms.txt
Augie Fackler
tests: add test for Mac OS X package construction
r29025
Augie Fackler
osx: override default exclude filter for pkgbuild...
r32603 We've had problems with the filter logic in the past. Make sure no
.DS_Store files ended up in the final package:
$ grep DS_S boms.txt
[1]
Augie Fackler
tests: add test for Mac OS X package construction
r29025 Spot-check some randomly selected files:
Kevin Bullock
osx: create a modern package including manpages...
r29027 $ grep bdiff boms.txt | cut -d ' ' -f 1,2,3
Augie Fackler
osx: update Mac packaging tests for bdiff.so install location change
r32469 ./Library/Python/2.7/site-packages/mercurial/cext/bdiff.so 100755 0/0
Augie Fackler
tests: update mac packaging test expectations...
r33594 ./Library/Python/2.7/site-packages/mercurial/cffi/bdiff.py 100644 0/0
./Library/Python/2.7/site-packages/mercurial/cffi/bdiff.pyc 100644 0/0
./Library/Python/2.7/site-packages/mercurial/cffi/bdiff.pyo 100644 0/0
./Library/Python/2.7/site-packages/mercurial/cffi/bdiffbuild.py 100644 0/0
./Library/Python/2.7/site-packages/mercurial/cffi/bdiffbuild.pyc 100644 0/0
./Library/Python/2.7/site-packages/mercurial/cffi/bdiffbuild.pyo 100644 0/0
Kevin Bullock
osx: create a modern package including manpages...
r29027 ./Library/Python/2.7/site-packages/mercurial/pure/bdiff.py 100644 0/0
./Library/Python/2.7/site-packages/mercurial/pure/bdiff.pyc 100644 0/0
./Library/Python/2.7/site-packages/mercurial/pure/bdiff.pyo 100644 0/0
Kyle Lippincott
zsh_completion: install as _hg not hg...
r32604 $ grep zsh/site-functions/_hg boms.txt | cut -d ' ' -f 1,2,3
./usr/local/share/zsh/site-functions/_hg 100644 0/0
Augie Fackler
osx: install bash and zsh completions by default...
r31142 $ grep hg-completion.bash boms.txt | cut -d ' ' -f 1,2,3
Augie Fackler
osx: install completion scripts using install(1) to avoid umask badness...
r31609 ./usr/local/hg/contrib/hg-completion.bash 100644 0/0
Kevin Bullock
osx: create a modern package including manpages...
r29027 $ egrep 'man[15]' boms.txt | cut -d ' ' -f 1,2,3
./usr/local/share/man/man1 40755 0/0
Augie Fackler
osx: include chg by default
r32471 ./usr/local/share/man/man1/chg.1 100644 0/0
Kevin Bullock
osx: create a modern package including manpages...
r29027 ./usr/local/share/man/man1/hg.1 100644 0/0
./usr/local/share/man/man5 40755 0/0
./usr/local/share/man/man5/hgignore.5 100644 0/0
./usr/local/share/man/man5/hgrc.5 100644 0/0
$ grep bser boms.txt | cut -d ' ' -f 1,2,3
./Library/Python/2.7/site-packages/hgext/fsmonitor/pywatchman/bser.so 100755 0/0
./Library/Python/2.7/site-packages/hgext/fsmonitor/pywatchman/pybser.py 100644 0/0
./Library/Python/2.7/site-packages/hgext/fsmonitor/pywatchman/pybser.pyc 100644 0/0
./Library/Python/2.7/site-packages/hgext/fsmonitor/pywatchman/pybser.pyo 100644 0/0
$ grep localrepo boms.txt | cut -d ' ' -f 1,2,3
./Library/Python/2.7/site-packages/mercurial/localrepo.py 100644 0/0
./Library/Python/2.7/site-packages/mercurial/localrepo.pyc 100644 0/0
./Library/Python/2.7/site-packages/mercurial/localrepo.pyo 100644 0/0
Augie Fackler
osx: include chg by default
r32471 $ egrep 'bin/' boms.txt | cut -d ' ' -f 1,2,3
./usr/local/bin/chg 100755 0/0
Kevin Bullock
osx: create a modern package including manpages...
r29027 ./usr/local/bin/hg 100755 0/0
Augie Fackler
tests: add test for Mac OS X package construction
r29025
Augie Fackler
osx: explicitly build hg with /usr/bin/python2.7...
r29535 Make sure the built binary uses the system Python interpreter
$ bsdtar xf mercurial.pkg/Payload usr/local/bin
Use a glob to find this to avoid check-code whining about a fixed path.
$ head -n 1 usr/local/b?n/hg
#!/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
Augie Fackler
tests: add test for Mac OS X package construction
r29025 Note that we're not currently installing any /etc/mercurial stuff,
including merge-tool configurations.