tests/test-bad-extension.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Sun, 09 Feb 2020 01:34:37 +0100
branchstable
changeset 44299 ee0959e7d435
parent 43191 5ed1abd0ea26
child 44619 8cab8db59b6c
permissions -rw-r--r--
remotefilelog-test: glob some flaky output line (issue6083) The two following lines are flaky underload, yet the final result is correct. The command involves background pre-check of output, these are not stable probably because they run in parallel in multiple process. I spent a couple of hours trying to understand the pattern and gave up. The documented intend of these tests is safely guaranteed by checking the cache content after the command. If it become useful to start testing precise internal details of the, they will have to be tested in a more appropriate framework than `.t` tests. Differential Revision: https://phab.mercurial-scm.org/D8102
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 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    65
  ImportError: No module named 'hgext.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    66
  ModuleNotFoundError: No module named 'hgext.badext2' (py36 !)
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    67
  Traceback (most recent call last): (py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    68
  ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    69
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !)
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
    70
  Traceback (most recent call last): (py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    71
  ImportError: No module named 'badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
    72
  ModuleNotFoundError: No module named 'badext2' (py36 !)
25364
de23a552fc23 extensions: show traceback on load failure if --traceback flag is set
Yuya Nishihara <yuya@tcha.org>
parents: 23172
diff changeset
    73
28155
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    74
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
    75
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    76
  $ cat <<EOF > showbadexts.py
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 31957
diff changeset
    77
  > 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
    78
  > cmdtable = {}
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 31957
diff changeset
    79
  > command = registrar.command(cmdtable)
33097
fce4ed2912bb py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32337
diff changeset
    80
  > @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
    81
  > 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
    82
  >     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
    83
  > EOF
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    84
  $ 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
    85
  BADEXTS: badext badext2
7f430b2ac7fd extensions: add notloaded method to return extensions failed to load
Jun Wu <quark@fb.com>
parents: 28083
diff changeset
    86
39112
f2e645dc6a67 tests: conditionalize extension tests for extra extensions
Gregory Szorc <gregory.szorc@gmail.com>
parents: 38798
diff changeset
    87
#if no-extraextensions
38727
fcb517ff9562 debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents: 38532
diff changeset
    88
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
    89
38727
fcb517ff9562 debug: move extensions debug behind a dedicated flag
Boris Feld <boris.feld@octobus.net>
parents: 38532
diff changeset
    90
  $ (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
    91
  > | grep -v '^ ' \
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    92
  > | filterlog \
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
    93
  > | 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
    94
  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
    95
  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
    96
  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
    97
  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
    98
  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
    99
  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
   100
  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
   101
  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
   102
  *** 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
   103
  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
   104
  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
   105
  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
   106
  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
   107
  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
   108
  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
   109
  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
   110
  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
   111
  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
   112
  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
   113
  ImportError: No module named badext2 (no-py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   114
  ImportError: No module named 'hgext.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   115
  ModuleNotFoundError: No module named 'hgext.badext2' (py36 !)
40996
6f2510b581a0 extensions: use ui.log() interface to provide detailed loading information
Yuya Nishihara <yuya@tcha.org>
parents: 40440
diff changeset
   116
  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
   117
  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
   118
  ImportError: No module named badext2 (no-py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   119
  ImportError: No module named 'hgext.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   120
  ModuleNotFoundError: No module named 'hgext.badext2' (py36 !)
40263
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 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   122
  ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   123
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !)
40236
9b3470dd9870 tests: add lots of globs and conditional output lines
Augie Fackler <augie@google.com>
parents: 40186
diff changeset
   124
  *** 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
   125
  Traceback (most recent call last):
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   126
  ImportError: No module named 'hgext.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   127
  ModuleNotFoundError: No module named 'hgext.badext2' (py36 !)
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   128
  Traceback (most recent call last): (py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   129
  ImportError: No module named 'hgext3rd.badext2' (py3 no-py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   130
  ModuleNotFoundError: No module named 'hgext3rd.badext2' (py36 !)
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   131
  Traceback (most recent call last): (py3 !)
43191
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   132
  ModuleNotFoundError: No module named 'badext2' (py36 !)
5ed1abd0ea26 py3: fix test-bad-extension expectations for py35
Ian Moody <moz-ian@perix.co.uk>
parents: 40996
diff changeset
   133
  ImportError: No module named 'badext2' (py3 no-py36 !)
40263
8cf459d8b111 py3: use py3 as the test tag, dropping the k
Martijn Pieters <mj@octobus.net>
parents: 40237
diff changeset
   134
  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
   135
  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
   136
  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
   137
  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
   138
  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
   139
  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
   140
  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
   141
  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
   142
  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
   143
  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
   144
  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
   145
  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
   146
  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
   147
  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
   148
  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
   149
  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
   150
  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
   151
  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
   152
  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
   153
  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
   154
  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
   155
  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
   156
#endif
28083
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   157
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   158
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
   159
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   160
  $ 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
   161
  *** 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
   162
  *** 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
   163
  Topics:
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   164
  
550097d01ca3 tests: confirm that a badly documented extension doesn't cause a crash
Simon Farnsworth <simonfar@fb.com>
parents: 27538
diff changeset
   165
   extensions Using Additional Features