def test_parse_repeating_interval_mockbuilder(self): mockBuilder = mock.Mock() args = {'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R3/1981-04-05/P1D', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = {'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = {'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R/PT1H2M/1980-03-05T01:01:00', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args)
def test_parse_repeating_interval_mockbuilder(self): mockBuilder = mock.Mock() args = {'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R3/1981-04-05/P1D', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = {'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = {'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval('R/PT1H2M/1980-03-05T01:01:00', builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args)
def test_parse_repeating_interval_suffixgarbage(self): #Don't allow garbage after the duration #https://bitbucket.org/nielsenb/aniso8601/issues/9/durations-with-trailing-garbage-are-parsed with self.assertRaises(ValueError): parse_repeating_interval('R3/1981-04-05/P1Dasdf') with self.assertRaises(ValueError): parse_repeating_interval( 'R3/1981-04-05/P0003-06-04T12:30:05.5asdfasdf')
def test_parse_repeating_interval_suffixgarbage(self): #Don't allow garbage after the duration #https://bitbucket.org/nielsenb/aniso8601/issues/9/durations-with-trailing-garbage-are-parsed with self.assertRaises(ISOFormatError): parse_repeating_interval('R3/1981-04-05/P1Dasdf', builder=None) with self.assertRaises(ISOFormatError): parse_repeating_interval('R3/' '1981-04-05/' 'P0003-06-04T12:30:05.5asdfasdf', builder=None)
def test_parse_repeating_interval_relative(self): results = list( parse_repeating_interval('R3/1981-04-05/P1D', relative=True)) self.assertEqual(results[0], datetime.date(year=1981, month=4, day=5)) self.assertEqual(results[1], datetime.date(year=1981, month=4, day=6)) self.assertEqual(results[2], datetime.date(year=1981, month=4, day=7)) results = list( parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00', relative=True)) for dateindex in range(0, 11): self.assertEqual( results[dateindex], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2)) results = list( parse_repeating_interval( 'R2--1980-03-05T01:01:00--1981-04-05T01:01:00', intervaldelimiter='--', relative=True)) self.assertEqual( results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual( results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) results = list( parse_repeating_interval( 'R2/1980-03-05 01:01:00/1981-04-05 01:01:00', datetimedelimiter=' ', relative=True)) self.assertEqual( results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual( results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) resultgenerator = parse_repeating_interval( 'R/PT1H2M/1980-03-05T01:01:00', relative=True) for dateindex in range(0, 11): self.assertEqual( next(resultgenerator), datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2))
def test_parse_repeating_interval_relative_nodateutil(self): import sys import dateutil dateutil_import = dateutil sys.modules['dateutil'] = None with self.assertRaises(RuntimeError): parse_repeating_interval('R3/1981-04-05/P1D', relative=True) with self.assertRaises(RuntimeError): parse_repeating_interval('R4/2017-04-30T00:00:00/P1M', relative=True) #Reinstall dateutil sys.modules['dateutil'] = dateutil
def test_parse_repeating_interval(self): results = list(parse_repeating_interval('R3/1981-04-05/P1D')) self.assertEqual(results[0], datetime.date(year=1981, month=4, day=5)) self.assertEqual(results[1], datetime.date(year=1981, month=4, day=6)) self.assertEqual(results[2], datetime.date(year=1981, month=4, day=7)) results = list(parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00')) for dateindex in range(0, 11): self.assertEqual(results[dateindex], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2)) results = list(parse_repeating_interval('R2--1980-03-05T01:01:00--1981-04-05T01:01:00', intervaldelimiter='--')) self.assertEqual(results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual(results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) results = list(parse_repeating_interval('R2/1980-03-05 01:01:00/1981-04-05 01:01:00', datetimedelimiter=' ')) self.assertEqual(results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual(results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) resultgenerator = parse_repeating_interval('R/PT1H2M/1980-03-05T01:01:00') for dateindex in range(0, 11): self.assertEqual(next(resultgenerator), datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2))
def test_parse_repeating_interval_badstr(self): testtuples = ('bad', '') for testtuple in testtuples: with self.assertRaises(ISOFormatError): parse_repeating_interval(testtuple, builder=None)
def test_parse_repeating_interval_relative(self): with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = {'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval')} mockBuild.return_value = expectedargs result = parse_repeating_interval('R3/1981-04-05/P1D', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = {'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuild.return_value = expectedargs result = parse_repeating_interval('R11/' 'PT1H2M/' '1980-03-05T01:01:00', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = {'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuild.return_value = expectedargs result = parse_repeating_interval('R/' 'PT1H2M/' '1980-03-05T01:01:00', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs)
def test_parse_repeating_interval(self): with mock.patch.object(aniso8601.interval.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R3/1981-04-05/P1D') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '2', 'interval': ((('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (('1981', '04', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), None, 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R2--1980-03-05T01:01:00--' '1981-04-05T01:01:00', intervaldelimiter='--') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '2', 'interval': ((('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (('1981', '04', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), None, 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R2/' '1980-03-05 01:01:00/' '1981-04-05 01:01:00', datetimedelimiter=' ') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R/PT1H2M/1980-03-05T01:01:00') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs)
def test_parse_repeating_interval_badtype(self): testtuples = (None, 1, False, 1.234) for testtuple in testtuples: with self.assertRaises(ValueError): parse_repeating_interval(testtuple, builder=None)
def test_parse_repeating_interval_relative(self): results = list( parse_repeating_interval('R3/1981-04-05/P1D', relative=True)) self.assertEqual(results[0], datetime.date(year=1981, month=4, day=5)) self.assertEqual(results[1], datetime.date(year=1981, month=4, day=6)) self.assertEqual(results[2], datetime.date(year=1981, month=4, day=7)) results = list( parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00', relative=True)) for dateindex in compat.range(0, 11): self.assertEqual( results[dateindex], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2)) results = list( parse_repeating_interval( 'R2--1980-03-05T01:01:00--1981-04-05T01:01:00', intervaldelimiter='--', relative=True)) self.assertEqual( results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual( results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) results = list( parse_repeating_interval( 'R2/1980-03-05 01:01:00/1981-04-05 01:01:00', datetimedelimiter=' ', relative=True)) self.assertEqual( results[0], datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1)) self.assertEqual( results[1], datetime.datetime(year=1981, month=4, day=5, hour=1, minute=1)) #Make sure relative is correctly applied for months #https://bitbucket.org/nielsenb/aniso8601/issues/12/month-intervals-calculated-incorrectly-or results = list( parse_repeating_interval('R4/2017-04-30T00:00:00/P1M', relative=True)) self.assertEqual(results[0], datetime.datetime(year=2017, month=4, day=30)) self.assertEqual(results[1], datetime.datetime(year=2017, month=5, day=30)) self.assertEqual(results[2], datetime.datetime(year=2017, month=6, day=30)) self.assertEqual(results[3], datetime.datetime(year=2017, month=7, day=30)) resultgenerator = parse_repeating_interval( 'R/PT1H2M/1980-03-05T01:01:00', relative=True) for dateindex in compat.range(0, 11): self.assertEqual( next(resultgenerator), datetime.datetime(year=1980, month=3, day=5, hour=1, minute=1) - dateindex * datetime.timedelta(hours=1, minutes=2))
def test_parse_repeating_interval_relative(self): with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = { 'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval') } mockBuild.return_value = expectedargs result = parse_repeating_interval('R3/1981-04-05/P1D', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = { 'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval') } mockBuild.return_value = expectedargs result = parse_repeating_interval( 'R11/' 'PT1H2M/' '1980-03-05T01:01:00', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.RelativeTimeBuilder, 'build_repeating_interval') as mockBuild: expectedargs = { 'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval') } mockBuild.return_value = expectedargs result = parse_repeating_interval( 'R/' 'PT1H2M/' '1980-03-05T01:01:00', relative=True) self.assertEqual(result, expectedargs) mockBuild.assert_called_once_with(**expectedargs)
def test_parse_repeating_interval_mockbuilder(self): mockBuilder = mock.Mock() args = { "R": False, "Rnn": "3", "interval": ( ("1981", "04", "05", None, None, None, "date"), None, (None, None, None, "1", None, None, None, "duration"), "interval", ), } mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval("R3/1981-04-05/P1D", builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = { "R": False, "Rnn": "11", "interval": ( None, ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), (None, None, None, None, "1", "2", None, "duration"), "interval", ), } mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval("R11/PT1H2M/1980-03-05T01:01:00", builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args) mockBuilder = mock.Mock() args = { "R": True, "Rnn": None, "interval": ( None, ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), (None, None, None, None, "1", "2", None, "duration"), "interval", ), } mockBuilder.build_repeating_interval.return_value = args result = parse_repeating_interval("R/PT1H2M/1980-03-05T01:01:00", builder=mockBuilder) self.assertEqual(result, args) mockBuilder.build_repeating_interval.assert_called_once_with(**args)
def test_parse_repeating_interval(self): with mock.patch.object(aniso8601.interval.PythonTimeBuilder, "build_repeating_interval") as mockBuilder: expectedargs = { "R": False, "Rnn": "3", "interval": ( ("1981", "04", "05", None, None, None, "date"), None, (None, None, None, "1", None, None, None, "duration"), "interval", ), } mockBuilder.return_value = expectedargs result = parse_repeating_interval("R3/1981-04-05/P1D") self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, "build_repeating_interval") as mockBuilder: expectedargs = { "R": False, "Rnn": "11", "interval": ( None, ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), (None, None, None, None, "1", "2", None, "duration"), "interval", ), } mockBuilder.return_value = expectedargs result = parse_repeating_interval("R11/PT1H2M/1980-03-05T01:01:00") self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, "build_repeating_interval") as mockBuilder: expectedargs = { "R": False, "Rnn": "2", "interval": ( ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), ( ("1981", "04", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), None, "interval", ), } mockBuilder.return_value = expectedargs result = parse_repeating_interval( "R2--1980-03-05T01:01:00--" "1981-04-05T01:01:00", intervaldelimiter="--") self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, "build_repeating_interval") as mockBuilder: expectedargs = { "R": False, "Rnn": "2", "interval": ( ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), ( ("1981", "04", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), None, "interval", ), } mockBuilder.return_value = expectedargs result = parse_repeating_interval( "R2/" "1980-03-05 01:01:00/" "1981-04-05 01:01:00", datetimedelimiter=" ") self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.interval.PythonTimeBuilder, "build_repeating_interval") as mockBuilder: expectedargs = { "R": True, "Rnn": None, "interval": ( None, ( ("1980", "03", "05", None, None, None, "date"), ("01", "01", "00", None, "time"), "datetime", ), (None, None, None, None, "1", "2", None, "duration"), "interval", ), } mockBuilder.return_value = expectedargs result = parse_repeating_interval("R/PT1H2M/1980-03-05T01:01:00") self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs)
def test_parse_repeating_interval(self): with mock.patch.object(aniso8601.builder.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '3', 'interval': (('1981', '04', '05', None, None, None, 'date'), None, (None, None, None, '1', None, None, None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R3/1981-04-05/P1D') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '11', 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R11/PT1H2M/1980-03-05T01:01:00') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '2', 'interval': ((('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (('1981', '04', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), None, 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R2--1980-03-05T01:01:00--' '1981-04-05T01:01:00', intervaldelimiter='--') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': False, 'Rnn': '2', 'interval': ((('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (('1981', '04', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), None, 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R2/' '1980-03-05 01:01:00/' '1981-04-05 01:01:00', datetimedelimiter=' ') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs) with mock.patch.object(aniso8601.builder.PythonTimeBuilder, 'build_repeating_interval') as mockBuilder: expectedargs = {'R': True, 'Rnn': None, 'interval': (None, (('1980', '03', '05', None, None, None, 'date'), ('01', '01', '00', None, 'time'), 'datetime'), (None, None, None, None, '1', '2', None, 'duration'), 'interval')} mockBuilder.return_value = expectedargs result = parse_repeating_interval('R/PT1H2M/1980-03-05T01:01:00') self.assertEqual(result, expectedargs) mockBuilder.assert_called_once_with(**expectedargs)
def test_parse_repeating_interval_baddelimiter(self): testtuples = ('R,PT1H2M,1980-03-05T01:01:00', 'R3 1981-04-05 P1D') for testtuple in testtuples: with self.assertRaises(ISOFormatError): parse_repeating_interval(testtuple, builder=None)