コード例 #1
0
def test_coerce_interval_list():
    """Test coerce_interval_list."""
    validator = VDR()
    # The good
    for value, results in [
            ('', []),
            ('P3D', [DurationFloat(259200)]),
            ('P3D, PT10M10S', [DurationFloat(259200), DurationFloat(610)]),
            ('25*PT30M,10*PT1H',
             [DurationFloat(1800)] * 25 + [DurationFloat(3600)] * 10)]:
        items = validator.coerce_interval_list(value, ['whatever'])
        for item, result in zip(items, results):
            assert pytest.approx(item, result)
    # The bad
    for value in ['None', '5 days', '20', 'PT10S, -12']:
        with pytest.raises(IllegalValueError):
            validator.coerce_interval_list(value, ['whatever'])
コード例 #2
0
ファイル: test_validate.py プロジェクト: cylc/cylc
 def test_coerce_interval_list(self):
     """Test coerce_interval_list."""
     validator = VDR()
     # The good
     for value, results in [
             ('', []),
             ('P3D', [DurationFloat(259200)]),
             ('P3D, PT10M10S', [DurationFloat(259200), DurationFloat(610)]),
             ('25*PT30M,10*PT1H',
              [DurationFloat(1800)] * 25 + [DurationFloat(3600)] * 10)]:
         items = validator.coerce_interval_list(value, ['whatever'])
         for item, result in zip(items, results):
             self.assertAlmostEqual(item, result)
     # The bad
     for value in ['None', '5 days', '20', 'PT10S, -12']:
         self.assertRaises(
             IllegalValueError,
             validator.coerce_interval_list, value, ['whatever'])
コード例 #3
0
def test_coerce_interval_list__bad(value: str):
    with pytest.raises(IllegalValueError):
        VDR.coerce_interval_list(value, ['whatever'])
コード例 #4
0
def test_coerce_interval_list(value: str, expected: List[DurationFloat]):
    """Test coerce_interval_list."""
    assert VDR.coerce_interval_list(value, ['whatever']) == approx(expected)