Skip to content
Snippets Groups Projects
Commit a0928bcd authored by Tamas Gal's avatar Tamas Gal :speech_balloon:
Browse files

Merge branch 'slicing' into 'master'

Add first test for slicing

See merge request !4
parents ca9317af 32c98c72
No related branches found
No related tags found
1 merge request!4Add first test for slicing
Pipeline #7742 passed with warnings
......@@ -4,6 +4,10 @@ Unreleased changes
Version 0
---------
0.6.2 / 2019-12-22
~~~~~~~~~~~~~~~~~~
* Fixes slicing of ``OfflineTracks``
0.6.1 / 2019-12-21
~~~~~~~~~~~~~~~~~~
* Minor cleanup
......
......@@ -570,8 +570,15 @@ class OfflineTracks:
setattr(self, k, v)
def __getitem__(self, item):
return OfflineTrack(self._keys, [v[item] for v in self._values],
fit_keys=self._fit_keys)
if isinstance(item, int):
return OfflineTrack(self._keys, [v[item] for v in self._values],
fit_keys=self._fit_keys)
else:
return OfflineTracks(
self._keys,
[v[item] for v in self._values],
fit_keys=self._fit_keys
)
def __len__(self):
try:
......
......@@ -306,6 +306,25 @@ class TestOfflineTracks(unittest.TestCase):
self.assertListEqual([0.230189, 0.230189, 0.218663],
list(dir_z[0][:3]))
def test_slicing(self):
tracks = self.tracks
assert 10 == len(tracks)
track_selection = tracks[2:7]
assert 5 == len(track_selection)
track_selection_2 = tracks[1:3]
assert 2 == len(track_selection_2)
for _slice in [
slice(0, 0),
slice(0, 1),
slice(0, 2),
slice(1, 5),
slice(3, -2)
]:
self.assertListEqual(
list(tracks.E[:,0][_slice]),
list(tracks[_slice].E[:,0])
)
class TestOfflineTrack(unittest.TestCase):
def setUp(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment