diff --git a/geomagio/TimeseriesUtility.py b/geomagio/TimeseriesUtility.py index 1c64c522f2db6b7a294ba025f673932e12a17a17..230c87b355ceabe883b1dd399657a2769cc5f502 100644 --- a/geomagio/TimeseriesUtility.py +++ b/geomagio/TimeseriesUtility.py @@ -2,6 +2,7 @@ from builtins import range from datetime import datetime import math +import sys import numpy import obspy.core @@ -48,6 +49,9 @@ def create_empty_trace( ) if delta > 60.0: trace_starttime += (delta - 60) / 2 + if trace_starttime > endtime: + sys.stderr.write("Starttime greater than endtime, shifting endtime to next sample") + endtime = trace_starttime + delta stats.starttime = trace_starttime stats.delta = delta # Calculate number of valid samples up to or before endtime diff --git a/test/TimeseriesUtility_test.py b/test/TimeseriesUtility_test.py index c3fbb918536a0b88f53c5e0e62b081c4b4c4162c..f769ef3f23efc79acfe09bd06544f6ca8e69eeea 100644 --- a/test/TimeseriesUtility_test.py +++ b/test/TimeseriesUtility_test.py @@ -84,6 +84,21 @@ def test_create_empty_trace(): assert_equal(day_trace.stats.starttime, UTCDateTime("2018-01-01T11:59:30Z")) + short_trace = TimeseriesUtility.create_empty_trace( + starttime=trace1.stats.starttime, + endtime=trace1.stats.starttime + 1, + observatory=observatory, + channel="F", + type="variation", + interval="day", + network=network, + station=trace1.stats.station, + location=location, + ) + + assert_equal(short_trace.stats.starttime, UTCDateTime("2018-01-01T11:59:30Z")) + assert_equal(short_trace.stats.endtime, UTCDateTime("2018-01-02T11:59:30Z")) + def test_get_stream_gaps(): """TimeseriesUtility_test.test_get_stream_gaps()