Browse Source

fix Surface.select_vertices() type hint & tests

Fabian Peter Hammerle 5 years ago
parent
commit
d6b913e8ad
2 changed files with 10 additions and 9 deletions
  1. 1 1
      freesurfer_surface/__init__.py
  2. 9 8
      tests/test_surface.py

+ 1 - 1
freesurfer_surface/__init__.py

@@ -507,5 +507,5 @@ class Surface:
                                self.triangles[triangle_index].vertex_indices))
 
     def select_vertices(self, vertex_indices: typing.Iterable[int]) \
-            -> numpy.ndarray:
+            -> typing.List[Vertex]:
         return [self.vertices[idx] for idx in vertex_indices]

+ 9 - 8
tests/test_surface.py

@@ -516,11 +516,12 @@ def test_select_vertices():
     surface = Surface()
     for i in range(4):
         surface.add_vertex(Vertex(i, i, i))
-    assert (surface.select_vertices([2, 1])
-            == [surface.vertices[2], surface.vertices[1]]).all()
-    assert (surface.select_vertices((3, 2))
-            == [surface.vertices[3], surface.vertices[2]]).all()
-    assert (surface.select_vertices((3, 2))
-            == [[3, 3, 3], [2, 2, 2]]).all()
-    assert (surface.select_vertices(filter(lambda i: i % 2 == 1, range(4)))
-            == [[1, 1, 1], [3, 3, 3]]).all()
+    assert numpy.allclose(surface.select_vertices([2, 1]),
+                          [surface.vertices[2], surface.vertices[1]])
+    assert numpy.allclose(surface.select_vertices([3, 2]),
+                          [surface.vertices[3], surface.vertices[2]])
+    assert numpy.allclose(surface.select_vertices((3, 2)),
+                          [[3, 3, 3], [2, 2, 2]])
+    assert numpy.allclose(surface.select_vertices(filter(lambda i: i % 2 == 1,
+                                                         range(4))),
+                          [[1, 1, 1], [3, 3, 3]])