77# Local application imports
88from .test_mesh_protocols import test_register_mesh
99
10+
1011def test_create_visualization (server ):
11- server .call (VtkViewerView .prefix + VtkViewerView .schemas_dict ["create_visualization" ]["rpc" ])
12+ server .call (
13+ VtkViewerView .prefix + VtkViewerView .schemas_dict ["create_visualization" ]["rpc" ]
14+ )
1215 assert server .compare_image (3 , "viewer/create_visualization.jpeg" ) == True
1316
17+
1418def test_reset_camera (server ):
15- server .call (VtkViewerView .prefix + VtkViewerView .schemas_dict ["reset_camera" ]["rpc" ])
19+ server .call (
20+ VtkViewerView .prefix + VtkViewerView .schemas_dict ["reset_camera" ]["rpc" ]
21+ )
1622 assert server .compare_image (3 , "viewer/reset_camera.jpeg" ) == True
1723
24+
1825def test_set_viewer_background_color (server ):
19- server .call (VtkViewerView .prefix + VtkViewerView .schemas_dict ["set_background_color" ]["rpc" ], [{"red" : 0 , "green" : 0 , "blue" : 255 }])
26+ server .call (
27+ VtkViewerView .prefix
28+ + VtkViewerView .schemas_dict ["set_background_color" ]["rpc" ],
29+ [{"red" : 0 , "green" : 0 , "blue" : 255 }],
30+ )
2031 assert server .compare_image (3 , "viewer/set_background_color.jpeg" ) == True
2132
22- def test_get_point_position (server ):
2333
34+ def test_get_point_position (server ):
2435 test_register_mesh (server )
2536
26- server .call (VtkViewerView .prefix + VtkViewerView .schemas_dict ["get_point_position" ]["rpc" ], [{"x" : 0 , "y" : 0 }])
37+ server .call (
38+ VtkViewerView .prefix + VtkViewerView .schemas_dict ["get_point_position" ]["rpc" ],
39+ [{"x" : 0 , "y" : 0 }],
40+ )
2741 response = server .get_response ()
2842 assert "x" in response ["result" ]
2943 assert "y" in response ["result" ]
@@ -43,7 +57,13 @@ def test_take_screenshot(server):
4357 # Take a screenshot with background jpg
4458 server .call (
4559 VtkViewerView .prefix + VtkViewerView .schemas_dict ["take_screenshot" ]["rpc" ],
46- [{"filename" : "take_screenshot_with_background" , "output_extension" : "jpg" , "include_background" : True }],
60+ [
61+ {
62+ "filename" : "take_screenshot_with_background" ,
63+ "output_extension" : "jpg" ,
64+ "include_background" : True ,
65+ }
66+ ],
4767 )
4868
4969 response = server .get_response ()
@@ -54,16 +74,24 @@ def test_take_screenshot(server):
5474 f .write (blob )
5575 f .close ()
5676 first_image_path = os .path .join (server .test_output_dir , "test.jpg" )
57- second_image_path = os .path .join (server .images_dir_path , "viewer/take_screenshot_with_background.jpg" )
77+ second_image_path = os .path .join (
78+ server .images_dir_path , "viewer/take_screenshot_with_background.jpg"
79+ )
5880
5981 assert server .images_diff (first_image_path , second_image_path ) == 0.0
6082
6183 # Take a screenshot without background png
6284 server .call (
6385 VtkViewerView .prefix + VtkViewerView .schemas_dict ["take_screenshot" ]["rpc" ],
64- [{"filename" : "take_screenshot_without_background" , "output_extension" : "png" , "include_background" : True }],
86+ [
87+ {
88+ "filename" : "take_screenshot_without_background" ,
89+ "output_extension" : "png" ,
90+ "include_background" : True ,
91+ }
92+ ],
6593 )
66-
94+
6795 response = server .get_response ()
6896 response = server .get_response ()
6997 blob = server .get_response ()
@@ -74,16 +102,24 @@ def test_take_screenshot(server):
74102 f .write (blob )
75103 f .close ()
76104 first_image_path = os .path .join (server .test_output_dir , "test.png" )
77- second_image_path = os .path .join (server .images_dir_path , "viewer/take_screenshot_without_background.png" )
105+ second_image_path = os .path .join (
106+ server .images_dir_path , "viewer/take_screenshot_without_background.png"
107+ )
78108
79109 assert server .images_diff (first_image_path , second_image_path ) == 0.0
80110
81111 # Take a screenshot with background png
82112 server .call (
83113 VtkViewerView .prefix + VtkViewerView .schemas_dict ["take_screenshot" ]["rpc" ],
84- [{"filename" : "take_screenshot_with_background" , "output_extension" : "png" , "include_background" : True }],
114+ [
115+ {
116+ "filename" : "take_screenshot_with_background" ,
117+ "output_extension" : "png" ,
118+ "include_background" : True ,
119+ }
120+ ],
85121 )
86-
122+
87123 response = server .get_response ()
88124 response = server .get_response ()
89125 blob = server .get_response ()
@@ -94,6 +130,32 @@ def test_take_screenshot(server):
94130 f .write (blob )
95131 f .close ()
96132 first_image_path = os .path .join (server .test_output_dir , "test.png" )
97- second_image_path = os .path .join (server .images_dir_path , "viewer/take_screenshot_with_background.png" )
133+ second_image_path = os .path .join (
134+ server .images_dir_path , "viewer/take_screenshot_with_background.png"
135+ )
98136
99137 assert server .images_diff (first_image_path , second_image_path ) == 0.0
138+
139+
140+ def test_picked_ids (server ):
141+
142+ test_register_mesh (server )
143+
144+ server .call (
145+ VtkViewerView .prefix + VtkViewerView .schemas_dict ["picked_ids" ]["rpc" ],
146+ [{"x" : 100 , "y" : 200 , "ids" : ["123456789" ]}],
147+ )
148+ response = server .get_response ()
149+
150+ print (f"Response: { response } " , flush = True )
151+
152+ assert "result" in response , f"Key 'result' not found in response: { response } "
153+
154+ assert (
155+ "array_ids" in response ["result" ]
156+ ), f"Key 'array_ids' not found in response['result']: { response ['result' ]} "
157+
158+ array_ids = response ["result" ]["array_ids" ]
159+ assert isinstance (array_ids , list ), f"Expected a list, but got { type (array_ids )} "
160+ assert all (isinstance (id , str ) for id in array_ids ), "All IDs should be strings"
161+ assert len (array_ids ) > 0 , "The list of array_ids should not be empty"
0 commit comments