~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/osutils.py

  • Committer: Martin Pool
  • Date: 2008-04-24 07:22:53 UTC
  • mto: This revision was merged to the branch mainline in revision 3415.
  • Revision ID: mbp@sourcefrog.net-20080424072253-opmjij7xfy38w27f
Remove every assert statement from bzrlib!

Depending on the context they are:

 * turned into an explicit if/raise of either AssertionError 
   or something more specific -- particularly where they protect
   programming interfaces, complex invariants, or data file integrity
 * removed, if they're redundant with a later check, not protecting
   a meaningful invariant
 * turned into a selftest method on tests

Show diffs side-by-side

added added

removed removed

Lines of Context:
555
555
 
556
556
 
557
557
def sha_file(f):
558
 
    if getattr(f, 'tell', None) is not None:
559
 
        assert f.tell() == 0
 
558
    """Calculate the hexdigest of an open file.
 
559
 
 
560
    The file cursor should be already at the start.
 
561
    """
560
562
    s = sha.new()
561
563
    BUFSIZE = 128<<10
562
564
    while True:
750
752
 
751
753
def splitpath(p):
752
754
    """Turn string into list of parts."""
753
 
    assert isinstance(p, basestring)
754
 
 
755
755
    # split on either delimiter because people might use either on
756
756
    # Windows
757
757
    ps = re.split(r'[\\/]', p)
767
767
    return rps
768
768
 
769
769
def joinpath(p):
770
 
    assert isinstance(p, (list, tuple))
771
770
    for f in p:
772
771
        if (f == '..') or (f is None) or (f == ''):
773
772
            raise errors.BzrError("sorry, %r not allowed in path" % f)
867
866
    avoids that problem.
868
867
    """
869
868
 
870
 
    assert len(base) >= MIN_ABS_PATHLENGTH, ('Length of base must be equal or'
871
 
        ' exceed the platform minimum length (which is %d)' % 
872
 
        MIN_ABS_PATHLENGTH)
 
869
    if len(base) < MIN_ABS_PATHLENGTH:
 
870
        # must have space for e.g. a drive letter
 
871
        raise ValueError('%r is too short to calculate a relative path'
 
872
            % (base,))
873
873
 
874
874
    rp = abspath(path)
875
875