Commit 7e200c2a authored by Łukasz Nowak's avatar Łukasz Nowak

Merge branch 'master' into certificate_authority

parents 6ddfc3ad ec48a173
......@@ -57,11 +57,10 @@ class DiffFile(object):
"""
def __init__(self, raw_diff):
if '@@' not in raw_diff:
self.binary = True
self.children = []
self.binary = raw_diff and '@@' not in raw_diff
if self.binary or not raw_diff:
return
else:
self.binary = False
self.header = raw_diff.split('@@')[0][:-1]
# Getting file path in header
self.path = self.header.split('====')[0][:-1].strip()
......@@ -84,7 +83,6 @@ class DiffFile(object):
if not self.body.startswith('@@'):
self.body = os.linesep.join(raw_diff.strip().splitlines()[4:])
# Now splitting modifications
self.children = []
first = True
tmp = []
for line in self.body.splitlines():
......@@ -97,6 +95,9 @@ class DiffFile(object):
tmp.append(line)
self.children.append(CodeBlock(os.linesep.join(tmp)))
def __nonzero__(self):
return self.binary or bool(self.children)
def __len__(self):
return len(self.children)
......
......@@ -556,15 +556,23 @@ class ERP5TypeTestCaseMixin(ProcessingNodeTestCase, PortalTestCase):
"""Invoke debugger"""
try: # try ipython if available
import IPython
IPython.Shell.IPShell(argv=[])
tracer = IPython.Debugger.Tracer()
try:
IPython.InteractiveShell()
tracer = IPython.core.debugger.Tracer()
except AttributeError: # for ipython-0.10 or before
IPython.Shell.IPShell(argv=[])
tracer = IPython.Debugger.Tracer()
except ImportError:
from pdb import set_trace as tracer
tracer()
def stepIPython(self, sequence=None, sequence_list=None):
import IPython.Shell
IPython.Shell.IPShellEmbed(())()
import IPython
try:
ipshell = IPython.frontend.terminal.embed.InteractiveShellEmbed()
except AttributeError: # for ipython-0.10 or before
ipshell = IPython.Shell.IPShellEmbed(())
ipshell()
def stepTic(self, **kw):
"""
......
......@@ -217,8 +217,10 @@ class Git(WorkingCopy):
template = 'Index: %%s\n%s%%s\n' % ('=' * 67)
for diff in out:
path = diff[:diff.index(' ')]
# XXX: the following line fails if only the file mode changes
diff_dict[path] = template % (path, diff[diff.index('\n---'):])
try:
diff_dict[path] = template % (path, diff[diff.index('\n---'):])
except ValueError:
pass # empty file is deleted or only file mode is changed
return stat_dict, diff_dict
def getModifiedTree(self, show_unmodified=False):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment