1
+ from github3 .utils import timestamp_parameter
2
+ from tests .utils import BaseCase
3
+ from datetime import datetime
4
+
5
+
6
+ class TestTimestampParameter (BaseCase ):
7
+
8
+ def test_datetimes (self ):
9
+ timestamp = datetime (2010 , 6 , 1 , 12 , 15 , 30 )
10
+ self .assertEqual ('2010-06-01T12:15:30' , timestamp_parameter (timestamp ))
11
+
12
+ def test_valid_datestring (self ):
13
+ testvals = (
14
+ '2010-06-01' ,
15
+ '2010-06-01T12:15:30' ,
16
+ '2010-06-01T12:14:30.12321+02:00' ,
17
+ '2010-06-01T12:14:30.12321-02:00' ,
18
+ '2010-06-01T12:14:30.2115Z' ,
19
+ )
20
+ for timestamp in testvals :
21
+ self .assertEqual (timestamp , timestamp_parameter (timestamp ))
22
+
23
+ def test_invalid_datestring (self ):
24
+ testvals = (
25
+ '2012-16-04' ,
26
+ '2012-06-01v!' ,
27
+ 'fish' ,
28
+ '2010-06-01T12:14:30.12321+02' ,
29
+ '2010-06-01T12:70:30.12321+02' ,
30
+ )
31
+ for timestamp in testvals :
32
+ self .assertRaises (ValueError , timestamp_parameter , timestamp )
33
+
34
+ def test_none_handling (self ):
35
+ self .assertIsNone (timestamp_parameter (None , allow_none = True ))
36
+ self .assertRaises (ValueError , timestamp_parameter , None , allow_none = False )
0 commit comments