コード例 #1
0
 def test_v2_range_offset_not_proper_str_or_int(self):
     with pytest.raises(TypeError):
         types.Range(zone_offset=10.2)
     with pytest.raises(TypeError):
         types.Range(zone_offset="+.00:11")
         types.Range(zone_offset="+00:a1")
         types.Range(zone_offset="+00:11lol")
コード例 #2
0
 def test_v2_range_timezone_discard_zoneoffset(self):
     now = datetime.now().astimezone()
     start = now
     end = now
     r = types.Range(start=start, end=end, zone_offset=0)
     assert(r.start_formatted()[-6:] == "-07:00")
     assert(r.end_formatted()[-6:] == "-07:00")
コード例 #3
0
 def test_v2_range_unix_epoch_timezone(self):
     seconds_now = int(time.time())
     start = seconds_now 
     end = seconds_now 
     r = types.Range(start=start, end=end, zone_offset=10)
     assert(r.start_formatted()[-6:] == "+00:00")
     assert(r.end_formatted()[-6:] == "+00:00")
コード例 #4
0
 def test_v2_range_timezone_conversion_custom_zoneoffset_str(self):
     naive_now = datetime.now()
     start = naive_now
     end = naive_now
     r = types.Range(start=start, end=end, zone_offset="+09:23")
     assert(r.start_formatted()[-6:] == "+09:23")
     assert(r.end_formatted()[-6:] == "+09:23")
コード例 #5
0
 def test_v2_range_timezone_conversion_use_local_timezone(self):
     local_datetime = datetime.now().astimezone()
     start = local_datetime
     end = local_datetime
     r = types.Range(start=start, end=end)
     assert(r.start == local_datetime)
     assert(r.end == local_datetime)
コード例 #6
0
 def test_v2_range_start_and_end_independent(self):
     naive_now = datetime.now()
     now = naive_now.astimezone()
     start = naive_now
     end = now
     r = types.Range(start=start, end=end, zone_offset=1)
     assert(r.start_formatted()[-6:] == "+01:00")
     assert(r.end_formatted()[-6:] == "-07:00")
コード例 #7
0
    def test_v2_range_timezone_conversion_obey_custom_zoneoffset(self):
        timezone_now = datetime.now()
        custom_time = datetime.now().replace(tzinfo = timezone(timedelta(hours=-5)))
        start = custom_time
        end = custom_time
        r = types.Range(start=start, end=end)
        assert(r.start_formatted() == start.isoformat("T"))
        assert(r.start_formatted() != timezone_now.isoformat("T"))

        assert(r.end_formatted() == end.isoformat("T"))
        assert(r.end_formatted() != timezone_now.isoformat("T"))
コード例 #8
0
 def test_v2_start_end_not_int_or_datetime(self):
     with pytest.raises(TypeError):
         types.Range(start=1.234, zone_offset=-1)
     with pytest.raises(TypeError):
         types.Range(end="2019-01-01T00:00:00Z+00:00", zone_offset=-1)
コード例 #9
0
 def test_v2_range_offset_too_large(self):
     naive_now = datetime.now()
     with pytest.raises(ValueError):
         types.Range(start=naive_now, zone_offset=30)
     with pytest.raises(ValueError):
         types.Range(start=naive_now, zone_offset="+24:80")
コード例 #10
0
 def test_v2_range_timezone_conversion_default_end_UTC(self):
     naive_now = datetime.now() 
     end = naive_now
     r = types.Range(end=end)
     assert(r.end_formatted()[-6:] == "+00:00")
     assert(r.start is None)
コード例 #11
0
 def test_v2_range_timezone_conversion_default_start_UTC(self):
     naive_now  = datetime.now() 
     start = naive_now
     r = types.Range(start=start)
     assert(r.start_formatted()[-6:] == "+00:00")
     assert(r.end is None)