##// END OF EJS Templates
windows: add win32com.shell to demandimport ignore list...
windows: add win32com.shell to demandimport ignore list Module 'appdirs' tries to import win32com.shell (and catch ImportError as an indication of failure) to check whether some further functionality should be implemented one or another way [1]. Of course, demandimport lets it down, so if we want appdirs to work we have to add it to demandimport's ignore list. The reason we want appdirs to work is becuase it is used by setuptools [2] to determine egg cache location. Only fairly recent versions of setuptools depend on this so people don't see this often. [1] https://github.com/ActiveState/appdirs/blob/master/appdirs.py#L560 [2] https://github.com/pypa/setuptools/blob/aae0a928119d2a178882c32bded02270e30d0273/pkg_resources/__init__.py#L1369

File last commit:

r31717:62676bb8 default
r31990:3e03a4b9 default
Show More
test-check-py3-commands.t
161 lines | 4.2 KiB | text/troff | Tads3Lexer
/ tests / test-check-py3-commands.t
Pulkit Goyal
py3: test to check which commands run...
r30129 #require py3exe
This test helps in keeping a track on which commands we can run on
Python 3 and see what kind of errors are coming up.
The full traceback is hidden to have a stable output.
Augie Fackler
tests: make a variable for hg binary location in test-check-py3-commands...
r31376 $ HGBIN=`which hg`
Pulkit Goyal
py3: test to check which commands run...
r30129
$ for cmd in version debuginstall ; do
> echo $cmd
Augie Fackler
tests: make a variable for hg binary location in test-check-py3-commands...
r31376 > $PYTHON3 $HGBIN $cmd 2>&1 2>&1 | tail -1
Pulkit Goyal
py3: test to check which commands run...
r30129 > done
version
Pulkit Goyal
py3: make keys of keyword arguments strings...
r30586 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Pulkit Goyal
py3: test to check which commands run...
r30129 debuginstall
Augie Fackler
policy: try and always have a bytes for module policy...
r31308 no problems detected
Augie Fackler
py3: add a test that proves %include and missing-extension code works
r31304
Augie Fackler
py3: prove `hg files --rev` works
r31377 #if test-repo
Make a clone so that any features in the developer's .hg/hgrc that
might confuse Python 3 don't break this test. When we can do commit in
Python 3, we'll stop doing this. We use e76ed1e480ef for the clone
because it has different files than 273ce12ad8f1, so we can test both
`files` from dirstate and `files` loaded from a specific revision.
$ hg clone -r e76ed1e480ef "`dirname "$TESTDIR"`" testrepo 2>&1 | tail -1
15 files updated, 0 files merged, 0 files removed, 0 files unresolved
Test using -R, which exercises some URL code:
$ $PYTHON3 $HGBIN -R testrepo files -r 273ce12ad8f1 | tail -1
testrepo/tkmerge
Now prove `hg files` is reading the whole manifest. We have to grep
out some potential warnings that come from hgrc as yet.
$ cd testrepo
$ $PYTHON3 $HGBIN files -r 273ce12ad8f1
.hgignore
PKG-INFO
README
hg
mercurial/__init__.py
mercurial/byterange.py
mercurial/fancyopts.py
mercurial/hg.py
mercurial/mdiff.py
mercurial/revlog.py
mercurial/transaction.py
notes.txt
setup.py
tkmerge
$ $PYTHON3 $HGBIN files -r 273ce12ad8f1 | wc -l
\s*14 (re)
$ $PYTHON3 $HGBIN files | wc -l
\s*15 (re)
Yuya Nishihara
py3: prove hg tip works
r31450
Yuya Nishihara
py3: convert log opts to bytes-key dict...
r31487 Test if log-like commands work:
Yuya Nishihara
py3: prove hg tip works
r31450
$ $PYTHON3 $HGBIN tip
changeset: 10:e76ed1e480ef
tag: tip
user: oxymoron@cinder.waste.org
date: Tue May 03 23:37:43 2005 -0800
summary: Fix linking of changeset revs when merging
Yuya Nishihara
py3: convert log opts to bytes-key dict...
r31487 $ $PYTHON3 $HGBIN log -r0
changeset: 0:9117c6561b0b
user: mpm@selenic.com
date: Tue May 03 13:16:10 2005 -0800
summary: Add back links from file revisions to changeset revisions
Augie Fackler
py3: prove `hg files --rev` works
r31377 $ cd ..
#endif
Rishabh Madan
py3: prove hg config works
r31522 Test if `hg config` works:
$ $PYTHON3 $HGBIN config
defaults.backout=-d "0 0"
defaults.commit=-d "0 0"
defaults.shelve=--date "0 0"
defaults.tag=-d "0 0"
devel.all-warnings=true
largefiles.usercache=$TESTTMP/.cache/largefiles
ui.slash=True
ui.interactive=False
ui.mergemarkers=detailed
ui.promptecho=True
web.address=localhost
web.ipv6=False
Augie Fackler
py3: add a test that proves %include and missing-extension code works
r31304 $ cat > included-hgrc <<EOF
> [extensions]
> babar = imaginary_elephant
> EOF
$ cat >> $HGRCPATH <<EOF
> %include $TESTTMP/included-hgrc
> EOF
Augie Fackler
tests: make a variable for hg binary location in test-check-py3-commands...
r31376 $ $PYTHON3 $HGBIN version | tail -1
Augie Fackler
py3: add a test that proves %include and missing-extension code works
r31304 *** failed to import extension babar from imaginary_elephant: *: 'imaginary_elephant' (glob)
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
FUJIWARA Katsunori
py3: add "b" prefix to string literals related to module policy...
r31361
Gregory Szorc
tests: clean up bad extension...
r31398 $ rm included-hgrc
$ touch included-hgrc
FUJIWARA Katsunori
py3: add "b" prefix to string literals related to module policy...
r31361 Test bytes-ness of policy.policy with HGMODULEPOLICY
$ HGMODULEPOLICY=py
$ export HGMODULEPOLICY
$ $PYTHON3 `which hg` debuginstall 2>&1 2>&1 | tail -1
no problems detected
Gregory Szorc
tests: prove that `hg init` works with Python 3...
r31401
`hg init` can create empty repos
Pulkit Goyal
test-check-py3-commands: cleanup tests related to `hg status`...
r31632 `hg status works fine`
Pulkit Goyal
tests: add check to make sure summary works on Python 2
r31717 `hg summary` also works!
Gregory Szorc
tests: prove that `hg init` works with Python 3...
r31401
Augie Fackler
py3: prove `hg {add,addremove,commit} all work...
r31607 $ $PYTHON3 `which hg` init py3repo
$ cd py3repo
$ echo "This is the file 'iota'." > iota
$ $PYTHON3 $HGBIN status
? iota
$ $PYTHON3 $HGBIN add iota
$ $PYTHON3 $HGBIN status
A iota
$ $PYTHON3 $HGBIN commit --message 'commit performed in Python 3'
$ $PYTHON3 $HGBIN status
$ mkdir A
$ echo "This is the file 'mu'." > A/mu
$ $PYTHON3 $HGBIN addremove
adding A/mu
$ $PYTHON3 $HGBIN status
A A/mu
$ HGEDITOR='echo message > ' $PYTHON3 $HGBIN commit
$ $PYTHON3 $HGBIN status
Pulkit Goyal
tests: add check to make sure summary works on Python 2
r31717 $ $PYHON3 $HGBIN summary
parent: 1:e1e9167203d4 tip
message
branch: default
commit: (clean)
update: (current)
phases: 2 draft
Augie Fackler
py3: prove `hg {add,addremove,commit} all work...
r31607
Prove the repo is valid using the Python 2 `hg`:
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
Yuya Nishihara
py3: prove second commit works...
r31651 2 files, 2 changesets, 2 total revisions
Augie Fackler
py3: prove `hg {add,addremove,commit} all work...
r31607 $ hg log
Yuya Nishihara
py3: prove second commit works...
r31651 changeset: 1:e1e9167203d4
Augie Fackler
py3: prove `hg {add,addremove,commit} all work...
r31607 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: message
Yuya Nishihara
py3: prove second commit works...
r31651 changeset: 0:71c96e924262
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: commit performed in Python 3