def test_cycle(self): t = datetime.utcnow().replace(tzinfo=pytz.utc) loc = Location4D(time=t, latitude=35, longitude=-76) c = SunCycles.cycles(loc=loc) sunrise = c[SunCycles.RISING] sunset = c[SunCycles.SETTING] d = Diel() d.min_depth = -4 d.max_depth = -10 d.pattern = 'cycles' d.cycle = 'sunrise' d.plus_or_minus = '+' d.time_delta = 4 assert d.get_time(loc4d=loc) == sunrise + timedelta(hours=4) d = Diel() d.min_depth = -4 d.max_depth = -10 d.pattern = 'cycles' d.cycle = 'sunset' d.plus_or_minus = '-' d.time_delta = 2 assert d.get_time(loc4d=loc) == sunset - timedelta(hours=2)