~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/_dirstate_helpers_py.py

  • Committer: John Arbash Meinel
  • Date: 2007-07-18 20:30:14 UTC
  • mto: This revision was merged to the branch mainline in revision 2643.
  • Revision ID: john@arbash-meinel.com-20070718203014-u8gpbqn5z9ftx1tu
Lot's of fixes from Martin's comments.
Fix signed/unsigned character issues
Add lots of comments to help understand the code
Add tests for proper Unicode handling (we should abort if we get a Unicode string,
and we should correctly handle utf-8 strings)

Show diffs side-by-side

added added

removed removed

Lines of Context:
148
148
        0 if paths are equal,
149
149
        and negative number if ``path2`` sorts first
150
150
    """
 
151
    if not isinstance(path1, str):
 
152
        raise TypeError("'path1' must be a plain string, not %s: %r"
 
153
                        % (type(path1), path1))
 
154
    if not isinstance(path2, str):
 
155
        raise TypeError("'path2' must be a plain string, not %s: %r"
 
156
                        % (type(path2), path2))
151
157
    return cmp(path1.split('/'), path2.split('/'))
152
158
 
153
159
 
164
170
        0 if paths are equal
165
171
        and a negative number if ``path2`` sorts first
166
172
    """
 
173
    if not isinstance(path1, str):
 
174
        raise TypeError("'path1' must be a plain string, not %s: %r"
 
175
                        % (type(path1), path1))
 
176
    if not isinstance(path2, str):
 
177
        raise TypeError("'path2' must be a plain string, not %s: %r"
 
178
                        % (type(path2), path2))
167
179
    dirname1, basename1 = os.path.split(path1)
168
180
    key1 = (dirname1.split('/'), basename1)
169
181
    dirname2, basename2 = os.path.split(path2)