##// END OF EJS Templates
repoview: fix corrupted hiddencache crash Mercurial (issue5042)...
repoview: fix corrupted hiddencache crash Mercurial (issue5042) Before this patch if the hiddencache existed but was empty, it would crash mercurial. This patch adds exception handling when reading the hiddencache to avoid the issue. When encountering a corrupted cache file we print a devel warning. There would be no point in issuing a normal warning as the user wouldn't be able to do anything about the situation. The warning looks like: devel-warn: corrupted hidden cache, removing it at: /path/to/repoview.py

File last commit:

r20622:352abbb0 default
r27917:97e0dc6d stable
Show More
test-duplicateoptions.py
36 lines | 964 B | text/x-python | PythonLexer
/ tests / test-duplicateoptions.py
Idan Kamara
tests: add a test to check for duplicate command options
r14449 import os
from mercurial import ui, commands, extensions
Matt Mackall
extensions: remove the inotify extension (BC)...
r20622 ignore = set(['highlight', 'win32text', 'factotum'])
Idan Kamara
tests: add a test to check for duplicate command options
r14449
if os.name != 'nt':
ignore.add('win32mbcs')
disabled = [ext for ext in extensions.disabled().keys() if ext not in ignore]
hgrc = open(os.environ["HGRCPATH"], 'w')
hgrc.write('[extensions]\n')
for ext in disabled:
hgrc.write(ext + '=\n')
hgrc.close()
u = ui.ui()
extensions.loadall(u)
Simon Heimberg
test: test for options duplicate with global options...
r15099 globalshort = set()
globallong = set()
for option in commands.globalopts:
option[0] and globalshort.add(option[0])
option[1] and globallong.add(option[1])
Idan Kamara
tests: add a test to check for duplicate command options
r14449 for cmd, entry in commands.table.iteritems():
Simon Heimberg
test: test for options duplicate with global options...
r15099 seenshort = globalshort.copy()
seenlong = globallong.copy()
Idan Kamara
tests: add a test to check for duplicate command options
r14449 for option in entry[1]:
if (option[0] and option[0] in seenshort) or \
(option[1] and option[1] in seenlong):
print "command '" + cmd + "' has duplicate option " + str(option)
seenshort.add(option[0])
seenlong.add(option[1])