Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def testFormatInverted(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Test catching error for large inverted range
seq = FileSequence("/path/to/file.1,%d#.ext" % (constants.MAX_FRAME_SIZE + 3))
self.assertRaises(exceptions.MaxSizeException, seq.format, '{inverted}')
finally:
constants.MAX_FRAME_SIZE = _maxSize
def testFormatInverted(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Test catching error for large inverted range
seq = FileSequence("/path/to/file.1,%d#.ext" % (constants.MAX_FRAME_SIZE + 3))
self.assertRaises(exceptions.MaxSizeException, seq.format, '{inverted}')
finally:
constants.MAX_FRAME_SIZE = _maxSize
def testFormatInverted(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Test catching error for large inverted range
seq = FileSequence("/path/to/file.1,%d#.ext" % (constants.MAX_FRAME_SIZE + 3))
self.assertRaises(exceptions.MaxSizeException, seq.format, '{inverted}')
finally:
constants.MAX_FRAME_SIZE = _maxSize
def testMaxFrameSize(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Within range
utils.xfrange(1, 100, 1, maxSize=-1)
utils.xfrange(1, 100, 1, maxSize=100)
FrameSet('1-%d' % maxSize)
# Should not be allowed
self.assertRaises(exceptions.MaxSizeException, utils.xfrange, 1, 100, 1, maxSize=50)
self.assertRaises(exceptions.MaxSizeException, FrameSet, '1-%d' % (maxSize + 1))
# Inverting would produce a huge new range
fs = FrameSet('1,%d' % (maxSize + 3))
self.assertRaises(exceptions.MaxSizeException, fs.invertedFrameRange)
finally:
constants.MAX_FRAME_SIZE = _maxSize
# Within range
utils.xfrange(1, 100, 1, maxSize=-1)
utils.xfrange(1, 100, 1, maxSize=100)
FrameSet('1-%d' % maxSize)
# Should not be allowed
self.assertRaises(exceptions.MaxSizeException, utils.xfrange, 1, 100, 1, maxSize=50)
self.assertRaises(exceptions.MaxSizeException, FrameSet, '1-%d' % (maxSize + 1))
# Inverting would produce a huge new range
fs = FrameSet('1,%d' % (maxSize + 3))
self.assertRaises(exceptions.MaxSizeException, fs.invertedFrameRange)
finally:
constants.MAX_FRAME_SIZE = _maxSize
def testMaxFrameSize(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Within range
utils.xfrange(1, 100, 1, maxSize=-1)
utils.xfrange(1, 100, 1, maxSize=100)
FrameSet('1-%d' % maxSize)
# Should not be allowed
self.assertRaises(exceptions.MaxSizeException, utils.xfrange, 1, 100, 1, maxSize=50)
self.assertRaises(exceptions.MaxSizeException, FrameSet, '1-%d' % (maxSize + 1))
# Inverting would produce a huge new range
fs = FrameSet('1,%d' % (maxSize + 3))
self.assertRaises(exceptions.MaxSizeException, fs.invertedFrameRange)
def testFormatInverted(self):
_maxSize = constants.MAX_FRAME_SIZE
try:
maxSize = constants.MAX_FRAME_SIZE = 500
# Test catching error for large inverted range
seq = FileSequence("/path/to/file.1,%d#.ext" % (constants.MAX_FRAME_SIZE + 3))
self.assertRaises(exceptions.MaxSizeException, seq.format, '{inverted}')
finally:
constants.MAX_FRAME_SIZE = _maxSize
frange = str(frange)
for key in PAD_MAP:
frange = frange.replace(key, '')
self._frange = utils.asString(frange)
# because we're acting like a set, we need to support the empty set
if not self._frange:
self._items = frozenset()
self._order = tuple()
return
# build the mutable stores, then cast to immutable for storage
items = set()
order = []
maxSize = constants.MAX_FRAME_SIZE
for part in self._frange.split(","):
# this is to deal with leading / trailing commas
if not part:
continue
# parse the partial range
start, end, modifier, chunk = FrameSet._parse_frange_part(part)
# handle batched frames (1-100x5)
if modifier == 'x':
frames = xfrange(start, end, chunk, maxSize=maxSize)
frames = [f for f in frames if f not in items]
self._maxSizeCheck(len(frames) + len(items))
order.extend(frames)
items.update(frames)
# handle staggered frames (1-100:5)
elif modifier == ':':
def _maxSizeCheck(cls, obj):
"""
Raise a MaxSizeException if ``obj`` exceeds MAX_FRAME_SIZE
Args:
obj (numbers.Number or collection):
Raises:
:class:`fileseq.exceptions.MaxSizeException`:
"""
fail = False
size = 0
if isinstance(obj, numbers.Number):
if obj > constants.MAX_FRAME_SIZE:
fail = True
size = obj
elif hasattr(obj, '__len__'):
size = len(obj)
fail = size > constants.MAX_FRAME_SIZE
if fail:
raise MaxSizeException('Frame size %s > %s (MAX_FRAME_SIZE)'
% (size, constants.MAX_FRAME_SIZE))