X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=tests%2Ftest_pyderasn.py;h=f31967375c2f0e123051ebed97f071941ce22367;hb=c6cf876ed3979538eeb0f0df60512c3feedb4715;hp=f48548ecfb925a1368917b0aacf6dc9c57147336;hpb=6e7c396eadd0193a18870650b6c23abbacea1591;p=pyderasn.git diff --git a/tests/test_pyderasn.py b/tests/test_pyderasn.py index f48548e..f319673 100644 --- a/tests/test_pyderasn.py +++ b/tests/test_pyderasn.py @@ -32,7 +32,9 @@ from string import whitespace from time import mktime from time import time from unittest import TestCase +from unittest.mock import patch +from dateutil.tz import tzutc from dateutil.tz import UTC from hypothesis import assume from hypothesis import given @@ -5062,6 +5064,17 @@ class TestUTCTime(TimeMixin, CommonMixin, TestCase): with self.assertRaisesRegex(ValueError, "only naive"): UTCTime(datetime(2000, 1, 1, 1, tzinfo=UTC)) + def test_raises_if_no_dateutil(self): + with patch("pyderasn.tzutc", new=None): + with self.assertRaisesRegex( + NotImplementedError, + "Package python-dateutil is required to use this feature", + ): + UTCTime(datetime.now()).totzdatetime() + + def test_tzinfo_gives_datetime_with_tzutc_tzinfo(self): + self.assertEqual(UTCTime(datetime.now()).totzdatetime().tzinfo, tzutc()) + @composite def tlv_value_strategy(draw): @@ -5937,7 +5950,7 @@ def sequences_strategy(draw, seq_klass): return seq_outer, expect_outers -class SeqMixing(object): +class SeqMixin(object): def test_invalid_value_type(self): with self.assertRaises(InvalidValueType) as err: self.base_klass(123) @@ -6451,7 +6464,7 @@ class SeqMixing(object): self.assertTrue(decoded.bered) -class TestSequence(SeqMixing, CommonMixin, TestCase): +class TestSequence(SeqMixin, CommonMixin, TestCase): base_klass = Sequence @given( @@ -6497,7 +6510,7 @@ class TestSequence(SeqMixing, CommonMixin, TestCase): self.assertEqual(seq["ok"], True) -class TestSet(SeqMixing, CommonMixin, TestCase): +class TestSet(SeqMixin, CommonMixin, TestCase): base_klass = Set @settings(max_examples=LONG_TEST_MAX_EXAMPLES) @@ -6612,7 +6625,7 @@ def seqof_values_strategy(draw, schema=None, do_expl=False): ) -class SeqOfMixing(object): +class SeqOfMixin(object): def test_invalid_value_type(self): with self.assertRaises(InvalidValueType) as err: self.base_klass(123) @@ -7082,7 +7095,7 @@ class SeqOfMixing(object): self.assertTrue(decoded.bered) -class TestSequenceOf(SeqOfMixing, CommonMixin, TestCase): +class TestSequenceOf(SeqOfMixin, CommonMixin, TestCase): class SeqOf(SequenceOf): schema = "whatever" base_klass = SeqOf @@ -7166,7 +7179,7 @@ class TestSequenceOf(SeqOfMixing, CommonMixin, TestCase): self.assertFalse(seqof.ready) -class TestSetOf(SeqOfMixing, CommonMixin, TestCase): +class TestSetOf(SeqOfMixin, CommonMixin, TestCase): class SeqOf(SetOf): schema = "whatever" base_klass = SeqOf