forked from argoverse/argoverse-api
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest_visualization_utils.py
52 lines (32 loc) · 1.67 KB
/
test_visualization_utils.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# <Copyright 2019, Argo AI, LLC. Released under the MIT license.>
"""Visualization utils unit tests"""
import pathlib
from typing import Iterator
import matplotlib.pyplot as plt
import pytest
from argoverse.data_loading.argoverse_tracking_loader import ArgoverseTrackingLoader
from argoverse.visualization import visualization_utils
TEST_DATA_LOC = pathlib.Path(__file__).parent.parent / "tests" / "test_data" / "tracking"
@pytest.fixture
def axes() -> Iterator[plt.Axes]:
fig = plt.gcf()
yield plt.gca()
plt.close(fig)
@pytest.fixture
def axes3d() -> Iterator[plt.Axes]:
fig = plt.gcf()
yield fig.add_subplot(111, projection="3d")
plt.close(fig)
@pytest.fixture
def data_loader() -> ArgoverseTrackingLoader:
return ArgoverseTrackingLoader(TEST_DATA_LOC)
def test_draw_point_cloud_no_error(data_loader: ArgoverseTrackingLoader, axes: plt.Axes) -> None:
visualization_utils.draw_point_cloud(axes, "title!", data_loader, 0, axes=[1, 0])
def test_draw_point_cloud_3d_no_error(data_loader: ArgoverseTrackingLoader, axes3d: plt.Axes) -> None:
visualization_utils.draw_point_cloud(axes3d, "title!", data_loader, 0)
def test_draw_point_cloud_trajectory_no_error(data_loader: ArgoverseTrackingLoader, axes: plt.Axes) -> None:
visualization_utils.draw_point_cloud_trajectory(axes, "title!", data_loader, 0, [1, 0])
def test_draw_point_cloud_trajectory_no_error(data_loader: ArgoverseTrackingLoader, axes3d: plt.Axes) -> None:
visualization_utils.draw_point_cloud_trajectory(axes3d, "title!", data_loader, 0)
def test_make_grid_ring_camera_no_error(data_loader: ArgoverseTrackingLoader) -> None:
visualization_utils.make_grid_ring_camera(data_loader, 0)