test-bad-extension.t
70 lines
| 2.5 KiB
| text/troff
|
Tads3Lexer
/ tests / test-bad-extension.t
Martin Geisler
|
r11858 | $ echo 'raise Exception("bit bucket overflow")' > badext.py | ||
Simon Farnsworth
|
r28083 | $ abspathexc=`pwd`/badext.py | ||
$ cat >baddocext.py <<EOF | ||||
> """ | ||||
> baddocext is bad | ||||
> """ | ||||
> EOF | ||||
$ abspathdoc=`pwd`/baddocext.py | ||||
Martin Geisler
|
r11858 | |||
Yuya Nishihara
|
r23172 | $ cat <<EOF >> $HGRCPATH | ||
> [extensions] | ||||
> gpg = | ||||
> hgext.gpg = | ||||
Simon Farnsworth
|
r28083 | > badext = $abspathexc | ||
> baddocext = $abspathdoc | ||||
Yuya Nishihara
|
r23172 | > badext2 = | ||
> EOF | ||||
Martin Geisler
|
r11858 | |||
timeless@mozdev.org
|
r26239 | $ hg -q help help 2>&1 |grep extension | ||
Mads Kiilerich
|
r12640 | *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow | ||
Brodie Rao
|
r12375 | *** failed to import extension badext2: No module named badext2 | ||
Yuya Nishihara
|
r25364 | |||
show traceback | ||||
timeless@mozdev.org
|
r26239 | $ hg -q help help --traceback 2>&1 | egrep ' extension|^Exception|Traceback|ImportError' | ||
Yuya Nishihara
|
r25364 | *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow | ||
Traceback (most recent call last): | ||||
Exception: bit bucket overflow | ||||
*** failed to import extension badext2: No module named badext2 | ||||
Traceback (most recent call last): | ||||
ImportError: No module named badext2 | ||||
Jun Wu
|
r28155 | names of extensions failed to load can be accessed via extensions.notloaded() | ||
$ cat <<EOF > showbadexts.py | ||||
> from mercurial import cmdutil, commands, extensions | ||||
> cmdtable = {} | ||||
> command = cmdutil.command(cmdtable) | ||||
> @command('showbadexts', norepo=True) | ||||
> def showbadexts(ui, *pats, **opts): | ||||
Danek Duvall
|
r28338 | > ui.write('BADEXTS: %s\n' % ' '.join(sorted(extensions.notloaded()))) | ||
Jun Wu
|
r28155 | > EOF | ||
$ hg --config extensions.badexts=showbadexts.py showbadexts 2>&1 | grep '^BADEXTS' | ||||
BADEXTS: badext badext2 | ||||
Yuya Nishihara
|
r25364 | show traceback for ImportError of hgext.name if debug is set | ||
(note that --debug option isn't applied yet when loading extensions) | ||||
timeless@mozdev.org
|
r26239 | $ (hg -q help help --traceback --config ui.debug=True 2>&1) \ | ||
> | grep -v '^ ' \ | ||||
> | egrep 'extension..[^p]|^Exception|Traceback|ImportError|not import' | ||||
Yuya Nishihara
|
r25364 | *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow | ||
Traceback (most recent call last): | ||||
Exception: bit bucket overflow | ||||
Bryan O'Sullivan
|
r27538 | could not import hgext.badext2 (No module named *badext2): trying badext2 (glob) | ||
Yuya Nishihara
|
r25364 | Traceback (most recent call last): | ||
Bryan O'Sullivan
|
r27538 | ImportError: No module named *badext2 (glob) | ||
Yuya Nishihara
|
r25364 | *** failed to import extension badext2: No module named badext2 | ||
Traceback (most recent call last): | ||||
ImportError: No module named badext2 | ||||
Simon Farnsworth
|
r28083 | |||
confirm that there's no crash when an extension's documentation is bad | ||||
$ hg help --keyword baddocext | ||||
*** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow | ||||
*** failed to import extension badext2: No module named badext2 | ||||
Topics: | ||||
extensions Using Additional Features | ||||