tests/test-bad-extension.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 03 Sep 2019 23:45:38 +0200
changeset 43038 7bb5a2465501
parent 40996 6f2510b581a0
child 43191 5ed1abd0ea26
permissions -rw-r--r--
revlog: add the appropriate flag is sidedata are passed to `addrevision` If we need to store sidedata, we need the flag to be set and the associated processing to be called. Differential Revision: https://phab.mercurial-scm.org/D6894
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
     1
  $ filterlog () {
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
     2
  >   sed -e 's!^[0-9/]* [0-9:]* ([0-9]*)>!YYYY/MM/DD HH:MM:SS (PID)>!'
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
     3
  > }
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
     4
31957
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
     5
ensure that failing ui.atexit handlers report sensibly
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
     6
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
     7
  $ cat > $TESTTMP/bailatexit.py <<EOF
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
     8
  > from mercurial import util
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
     9
  > def bail():
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    10
  >     raise RuntimeError('ui.atexit handler exception')
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    11
  > 
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    12
  > def extsetup(ui):
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    13
  >     ui.atexit(bail)
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    14
  > EOF
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    15
  $ hg -q --config extensions.bailatexit=$TESTTMP/bailatexit.py \
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    16
  >  help help
40346
943248e47864 commands: adjust metavariables as appropriate
Anton Shestakov <av6@dwimlabs.net>
parents: 40263
diff changeset
    17
  hg help [-eck] [-s PLATFORM] [TOPIC]
31957
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    18
  
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    19
  show help for a given topic or a help overview
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    20
  error in exit handlers:
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    21
  Traceback (most recent call last):
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    22
    File "*/mercurial/dispatch.py", line *, in _runexithandlers (glob)
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    23
      func(*args, **kwargs)
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    24
    File "$TESTTMP/bailatexit.py", line *, in bail (glob)
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    25
      raise RuntimeError('ui.atexit handler exception')
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    26
  RuntimeError: ui.atexit handler exception
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    27
  [255]
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    28
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    29
  $ rm $TESTTMP/bailatexit.py
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    30
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    31
another bad extension
84f9eb9758c0 atexit: test failing handlers
Bryan O'Sullivan <bryano@fb.com>
parents: 30027
diff changeset
    32
11858
934c7e91c126 tests: unify test-bad-extension
Martin Geisler <mg@lazybytes.net>
parents: 6204
diff changeset
    33
  $ echo 'raise Exception("bit bucket overflow")' > badext.py
28083
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    34
  $ abspathexc=`pwd`/badext.py
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    35
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    36
  $ cat >baddocext.py <<EOF
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    37
  > """
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    38
  > baddocext is bad
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    39
  > """
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    40
  > EOF
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    41
  $ abspathdoc=`pwd`/baddocext.py
3014
01454af644b8 load extensions only after the ui object has been completely initialized
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    42
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    43
  $ cat <<EOF >> $HGRCPATH
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    44
  > [extensions]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    45
  > gpg =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    46
  > hgext.gpg =
28083
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    47
  > badext = $abspathexc
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
    48
  > baddocext = $abspathdoc
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    49
  > badext2 =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 14286
diff changeset
    50
  > EOF
3014
01454af644b8 load extensions only after the ui object has been completely initialized
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    51
26239
f39953663cc9 test-bad-extension: reduce dependencies on other things
timeless@mozdev.org
parents: 25364
diff changeset
    52
  $ hg -q help help 2>&1 |grep extension
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12376
diff changeset
    53
  *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
40236
9b3470dd9870 tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents: 40186
diff changeset
    54
  *** failed to import extension badext2: No module named *badext2* (glob)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    55
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    56
show traceback
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    57
40237
772c1145bcef tests: expand our coverage of errors in Python 3 for bad extensions
Augie Fackler <augie@google.com>
parents: 40236
diff changeset
    58
  $ hg -q help help --traceback 2>&1 | egrep ' extension|^Exception|Traceback|ImportError|ModuleNotFound'
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    59
  *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    60
  Traceback (most recent call last):
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    61
  Exception: bit bucket overflow
40236
9b3470dd9870 tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents: 40186
diff changeset
    62
  *** failed to import extension badext2: No module named *badext2* (glob)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    63
  Traceback (most recent call last):
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    64
  ImportError: No module named badext2 (no-py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    65
  ModuleNotFoundError: No module named 'hgext.badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    66
  Traceback (most recent call last): (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    67
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    68
  Traceback (most recent call last): (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    69
  ModuleNotFoundError: No module named 'badext2' (py3 !)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    70
28155
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    71
names of extensions failed to load can be accessed via extensions.notloaded()
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    72
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    73
  $ cat <<EOF > showbadexts.py
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 31957
diff changeset
    74
  > from mercurial import commands, extensions, registrar
28155
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    75
  > cmdtable = {}
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 31957
diff changeset
    76
  > command = registrar.command(cmdtable)
33097
fce4ed2912bb py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32337
diff changeset
    77
  > @command(b'showbadexts', norepo=True)
28155
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    78
  > def showbadexts(ui, *pats, **opts):
40186
9cbc2579f5be tests: fix up test-bad-extension.t's inline extension
Augie Fackler <augie@google.com>
parents: 39511
diff changeset
    79
  >     ui.write(b'BADEXTS: %s\n' % b' '.join(sorted(extensions.notloaded())))
28155
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    80
  > EOF
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    81
  $ hg --config extensions.badexts=showbadexts.py showbadexts 2>&1 | grep '^BADEXTS'
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    82
  BADEXTS: badext badext2
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    83
39112
f2e645dc6a67 tests: conditionalize extension tests for extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents: 38798
diff changeset
    84
#if no-extraextensions
38727
fcb517ff9562 debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents: 38532
diff changeset
    85
show traceback for ImportError of hgext.name if devel.debug.extensions is set
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    86
38727
fcb517ff9562 debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents: 38532
diff changeset
    87
  $ (hg help help --traceback --debug --config devel.debug.extensions=yes 2>&1) \
26239
f39953663cc9 test-bad-extension: reduce dependencies on other things
timeless@mozdev.org
parents: 25364
diff changeset
    88
  > | grep -v '^ ' \
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    89
  > | filterlog \
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    90
  > | egrep 'extension..[^p]|^Exception|Traceback|ImportError|^YYYY|not import|ModuleNotFound'
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    91
  YYYY/MM/DD HH:MM:SS (PID)> loading extensions
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    92
  YYYY/MM/DD HH:MM:SS (PID)> - processing 5 entries
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    93
  YYYY/MM/DD HH:MM:SS (PID)>   - loading extension: gpg
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    94
  YYYY/MM/DD HH:MM:SS (PID)>   > gpg extension loaded in * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    95
  YYYY/MM/DD HH:MM:SS (PID)>     - validating extension tables: gpg
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    96
  YYYY/MM/DD HH:MM:SS (PID)>     - invoking registered callbacks: gpg
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    97
  YYYY/MM/DD HH:MM:SS (PID)>     > callbacks completed in * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    98
  YYYY/MM/DD HH:MM:SS (PID)>   - loading extension: badext
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    99
  *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
   100
  Traceback (most recent call last):
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
   101
  Exception: bit bucket overflow
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   102
  YYYY/MM/DD HH:MM:SS (PID)>   - loading extension: baddocext
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   103
  YYYY/MM/DD HH:MM:SS (PID)>   > baddocext extension loaded in * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   104
  YYYY/MM/DD HH:MM:SS (PID)>     - validating extension tables: baddocext
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   105
  YYYY/MM/DD HH:MM:SS (PID)>     - invoking registered callbacks: baddocext
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   106
  YYYY/MM/DD HH:MM:SS (PID)>     > callbacks completed in * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   107
  YYYY/MM/DD HH:MM:SS (PID)>   - loading extension: badext2
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   108
  YYYY/MM/DD HH:MM:SS (PID)>     - could not import hgext.badext2 (No module named *badext2*): trying hgext3rd.badext2 (glob)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
   109
  Traceback (most recent call last):
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   110
  ImportError: No module named badext2 (no-py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   111
  ModuleNotFoundError: No module named 'hgext.badext2' (py3 !)
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   112
  YYYY/MM/DD HH:MM:SS (PID)>     - could not import hgext3rd.badext2 (No module named *badext2*): trying badext2 (glob)
28541
4b81487a01d4 extensions: also search for extension in the 'hgext3rd' package
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28338
diff changeset
   113
  Traceback (most recent call last):
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   114
  ImportError: No module named badext2 (no-py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   115
  ModuleNotFoundError: No module named 'hgext.badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   116
  Traceback (most recent call last): (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   117
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3 !)
40236
9b3470dd9870 tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents: 40186
diff changeset
   118
  *** failed to import extension badext2: No module named *badext2* (glob)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
   119
  Traceback (most recent call last):
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   120
  ModuleNotFoundError: No module named 'hgext.badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   121
  Traceback (most recent call last): (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   122
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   123
  Traceback (most recent call last): (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   124
  ModuleNotFoundError: No module named 'badext2' (py3 !)
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   125
  ImportError: No module named badext2 (no-py3 !)
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   126
  YYYY/MM/DD HH:MM:SS (PID)> > loaded 2 extensions, total time * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   127
  YYYY/MM/DD HH:MM:SS (PID)> - loading configtable attributes
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   128
  YYYY/MM/DD HH:MM:SS (PID)> - executing uisetup hooks
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   129
  YYYY/MM/DD HH:MM:SS (PID)>   - running uisetup for gpg
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   130
  YYYY/MM/DD HH:MM:SS (PID)>   > uisetup for gpg took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   131
  YYYY/MM/DD HH:MM:SS (PID)>   - running uisetup for baddocext
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   132
  YYYY/MM/DD HH:MM:SS (PID)>   > uisetup for baddocext took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   133
  YYYY/MM/DD HH:MM:SS (PID)> > all uisetup took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   134
  YYYY/MM/DD HH:MM:SS (PID)> - executing extsetup hooks
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   135
  YYYY/MM/DD HH:MM:SS (PID)>   - running extsetup for gpg
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   136
  YYYY/MM/DD HH:MM:SS (PID)>   > extsetup for gpg took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   137
  YYYY/MM/DD HH:MM:SS (PID)>   - running extsetup for baddocext
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   138
  YYYY/MM/DD HH:MM:SS (PID)>   > extsetup for baddocext took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   139
  YYYY/MM/DD HH:MM:SS (PID)> > all extsetup took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   140
  YYYY/MM/DD HH:MM:SS (PID)> - executing remaining aftercallbacks
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   141
  YYYY/MM/DD HH:MM:SS (PID)> > remaining aftercallbacks completed in * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   142
  YYYY/MM/DD HH:MM:SS (PID)> - loading extension registration objects
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   143
  YYYY/MM/DD HH:MM:SS (PID)> > extension registration object loading took * (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   144
  YYYY/MM/DD HH:MM:SS (PID)> > extension baddocext take a total of * to load (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   145
  YYYY/MM/DD HH:MM:SS (PID)> > extension gpg take a total of * to load (glob)
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   146
  YYYY/MM/DD HH:MM:SS (PID)> extension loading complete
39112
f2e645dc6a67 tests: conditionalize extension tests for extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents: 38798
diff changeset
   147
#endif
28083
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   148
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   149
confirm that there's no crash when an extension's documentation is bad
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   150
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   151
  $ hg help --keyword baddocext
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   152
  *** failed to import extension badext from $TESTTMP/badext.py: bit bucket overflow
40236
9b3470dd9870 tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents: 40186
diff changeset
   153
  *** failed to import extension badext2: No module named *badext2* (glob)
28083
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   154
  Topics:
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   155
  
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   156
   extensions Using Additional Features