comparison tests/test-bad-extension.t @ 40237:772c1145bcef

tests: expand our coverage of errors in Python 3 for bad extensions What a mess. Differential Revision: https://phab.mercurial-scm.org/D5005
author Augie Fackler <augie@google.com>
date Fri, 12 Oct 2018 12:38:37 -0400
parents 9b3470dd9870
children 8cf459d8b111
comparison
equal deleted inserted replaced
40236:9b3470dd9870 40237:772c1145bcef
49 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow 49 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
50 *** failed to import extension badext2: No module named *badext2* (glob) 50 *** failed to import extension badext2: No module named *badext2* (glob)
51 51
52 show traceback 52 show traceback
53 53
54 $ hg -q help help --traceback 2>&1 | egrep ' extension|^Exception|Traceback|ImportError' 54 $ hg -q help help --traceback 2>&1 | egrep ' extension|^Exception|Traceback|ImportError|ModuleNotFound'
55 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow 55 *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
56 Traceback (most recent call last): 56 Traceback (most recent call last):
57 Exception: bit bucket overflow 57 Exception: bit bucket overflow
58 *** failed to import extension badext2: No module named *badext2* (glob) 58 *** failed to import extension badext2: No module named *badext2* (glob)
59 Traceback (most recent call last): 59 Traceback (most recent call last):
60 ImportError: No module named badext2 (no-py3k !) 60 ImportError: No module named badext2 (no-py3k !)
61 ModuleNotFoundError: No module named 'hgext.badext2' (py3k !)
61 Traceback (most recent call last): (py3k !) 62 Traceback (most recent call last): (py3k !)
63 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3k !)
62 Traceback (most recent call last): (py3k !) 64 Traceback (most recent call last): (py3k !)
65 ModuleNotFoundError: No module named 'badext2' (py3k !)
63 66
64 names of extensions failed to load can be accessed via extensions.notloaded() 67 names of extensions failed to load can be accessed via extensions.notloaded()
65 68
66 $ cat <<EOF > showbadexts.py 69 $ cat <<EOF > showbadexts.py
67 > from mercurial import commands, extensions, registrar 70 > from mercurial import commands, extensions, registrar
77 #if no-extraextensions 80 #if no-extraextensions
78 show traceback for ImportError of hgext.name if devel.debug.extensions is set 81 show traceback for ImportError of hgext.name if devel.debug.extensions is set
79 82
80 $ (hg help help --traceback --debug --config devel.debug.extensions=yes 2>&1) \ 83 $ (hg help help --traceback --debug --config devel.debug.extensions=yes 2>&1) \
81 > | grep -v '^ ' \ 84 > | grep -v '^ ' \
82 > | egrep 'extension..[^p]|^Exception|Traceback|ImportError|not import' 85 > | egrep 'extension..[^p]|^Exception|Traceback|ImportError|not import|ModuleNotFound'
83 debug.extensions: loading extensions 86 debug.extensions: loading extensions
84 debug.extensions: - processing 5 entries 87 debug.extensions: - processing 5 entries
85 debug.extensions: - loading extension: 'gpg' 88 debug.extensions: - loading extension: 'gpg'
86 debug.extensions: > 'gpg' extension loaded in * (glob) 89 debug.extensions: > 'gpg' extension loaded in * (glob)
87 debug.extensions: - validating extension tables: 'gpg' 90 debug.extensions: - validating extension tables: 'gpg'
98 debug.extensions: > callbacks completed in * (glob) 101 debug.extensions: > callbacks completed in * (glob)
99 debug.extensions: - loading extension: 'badext2' 102 debug.extensions: - loading extension: 'badext2'
100 debug.extensions: - could not import hgext.badext2 (No module named *badext2*): trying hgext3rd.badext2 (glob) 103 debug.extensions: - could not import hgext.badext2 (No module named *badext2*): trying hgext3rd.badext2 (glob)
101 Traceback (most recent call last): 104 Traceback (most recent call last):
102 ImportError: No module named badext2 (no-py3k !) 105 ImportError: No module named badext2 (no-py3k !)
106 ModuleNotFoundError: No module named 'hgext.badext2' (py3k !)
103 debug.extensions: - could not import hgext3rd.badext2 (No module named *badext2*): trying badext2 (glob) 107 debug.extensions: - could not import hgext3rd.badext2 (No module named *badext2*): trying badext2 (glob)
104 Traceback (most recent call last): 108 Traceback (most recent call last):
105 ImportError: No module named badext2 (no-py3k !) 109 ImportError: No module named badext2 (no-py3k !)
110 ModuleNotFoundError: No module named 'hgext.badext2' (py3k !)
106 Traceback (most recent call last): (py3k !) 111 Traceback (most recent call last): (py3k !)
112 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3k !)
107 *** failed to import extension badext2: No module named *badext2* (glob) 113 *** failed to import extension badext2: No module named *badext2* (glob)
108 Traceback (most recent call last): 114 Traceback (most recent call last):
115 ModuleNotFoundError: No module named 'hgext.badext2' (py3k !)
109 Traceback (most recent call last): (py3k !) 116 Traceback (most recent call last): (py3k !)
117 ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3k !)
110 Traceback (most recent call last): (py3k !) 118 Traceback (most recent call last): (py3k !)
119 ModuleNotFoundError: No module named 'badext2' (py3k !)
111 ImportError: No module named badext2 (no-py3k !) 120 ImportError: No module named badext2 (no-py3k !)
112 debug.extensions: > loaded 2 extensions, total time * (glob) 121 debug.extensions: > loaded 2 extensions, total time * (glob)
113 debug.extensions: - loading configtable attributes 122 debug.extensions: - loading configtable attributes
114 debug.extensions: - executing uisetup hooks 123 debug.extensions: - executing uisetup hooks
115 debug.extensions: - running uisetup for 'gpg' 124 debug.extensions: - running uisetup for 'gpg'