Skip to content

Commit 234bee7

Browse files
add tests
1 parent bc55428 commit 234bee7

File tree

3 files changed

+39
-2
lines changed

3 files changed

+39
-2
lines changed

stingray/events.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ class EventList(StingrayTimeseries):
109109
ncounts: int
110110
Number of desired data points in event list. Deprecated
111111
112-
gtis: ``[[gti0_0, gti0_1], [gti1_0, gti1_1], ...]``
112+
gti: ``[[gti0_0, gti0_1], [gti1_0, gti1_1], ...]``
113113
Good Time Intervals
114114
115115
pi : integer, numpy.ndarray
@@ -171,7 +171,7 @@ class EventList(StingrayTimeseries):
171171
mjdref : float
172172
The MJD used as a reference for the time array.
173173
174-
gtis: ``[[gti0_0, gti0_1], [gti1_0, gti1_1], ...]``
174+
gti: ``[[gti0_0, gti0_1], [gti1_0, gti1_1], ...]``
175175
Good Time Intervals
176176
177177
pi : integer, numpy.ndarray

stingray/io.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -873,6 +873,7 @@ def _transform_slice_into_events(self, data):
873873
):
874874
conversion = (1 * u.Unit(unit)).to(u.keV).value
875875
new_ts.energy = energy * conversion
876+
new_ts.pi = channels
876877
else:
877878
if self.energy_column in data.dtype.names:
878879
conversion = 1

stingray/tests/test_events.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
import os
44
import pytest
55
import numpy as np
6+
from numpy.testing import assert_allclose, assert_array_equal, assert_equal
7+
8+
from astropy.io import fits
69
from astropy.time import Time
710

811
from ..events import EventList
@@ -359,6 +362,39 @@ def test_pandas_roundtrip(self):
359362
assert getattr(ev, attr) == getattr(new_ev, attr)
360363

361364

365+
class TestEventsFermi(object):
366+
@classmethod
367+
def setup_class(self):
368+
self.fermi_file = os.path.join(datadir, "fermi_gbm_tte.fits")
369+
with fits.open(self.fermi_file) as hdul:
370+
self.header = hdul[0].header
371+
self.time = hdul[2].data["TIME"]
372+
self.gti = hdul[3].data[0]
373+
374+
self.pi = hdul[2].data["PHA"]
375+
elower = hdul[1].data["E_MIN"]
376+
ehigher = hdul[1].data["E_MAX"]
377+
emid = elower + (ehigher - elower) / 2.0
378+
self.energy = np.array([emid[c] for c in self.pi])
379+
380+
def test_read_fermi(self):
381+
assert EventList.read(self.fermi_file) is not None
382+
383+
def test_check_energy_pi(self):
384+
evt = EventList.read(self.fermi_file)
385+
386+
assert_allclose(evt.energy, self.energy, atol=1e-8)
387+
assert_array_equal(evt.pi, self.pi)
388+
389+
def test_check_time_gti(self):
390+
evt = EventList.read(self.fermi_file)
391+
392+
assert_allclose(evt.time, self.time, atol=1e-8)
393+
assert_array_equal(evt.gti, np.array(self.gti).reshape(1, 2))
394+
assert_equal(evt.ncounts, self.time.shape[0])
395+
assert_allclose(evt.mjdref, self.header["MJDREFI"])
396+
397+
362398
class TestJoinEvents:
363399
def test_join_without_times_simulated(self):
364400
"""Test if exception is raised when join method is

0 commit comments

Comments
 (0)