1212from shutil import copyfile , copytree
1313import os
1414from typing import Callable , Optional , List
15+ from websocket import WebSocketTimeoutException
1516
1617
1718class ServerMonitor :
@@ -82,11 +83,7 @@ def images_diff(self, first_image_path, second_image_path):
8283
8384 return images_diff .GetThresholdedError ()
8485
85- def compare_image (self , nb_messages , filename ):
86- try :
87- from websocket import WebSocketTimeoutException # type: ignore
88- except Exception :
89- WebSocketTimeoutException = Exception # fallback
86+ def compare_image (self , filename ):
9087 import time
9188 self .ws .settimeout (4.0 )
9289 image = None
@@ -135,10 +132,6 @@ def _init_ws(self):
135132 self .call ("viewport.image.push.observer.add" , [- 1 ])
136133
137134 def _drain_initial_messages (self , max_messages : int = 5 , timeout : float = 4.0 ):
138- try :
139- from websocket import WebSocketTimeoutException # type: ignore
140- except Exception :
141- WebSocketTimeoutException = Exception
142135
143136 self .ws .settimeout (timeout )
144137 for _ in range (max_messages ):
@@ -190,7 +183,6 @@ def configure_test_environment():
190183 base_path = os .path .dirname (__file__ )
191184 config .test_config (base_path )
192185
193- # init and seed the test database (shared with WS server)
194186 tmp_data_path = os .environ .get ("DATA_FOLDER_PATH" )
195187 assert tmp_data_path , "DATA_FOLDER_PATH must be set by test_config"
196188 database_path = os .path .join (tmp_data_path , "project.db" )
@@ -200,7 +192,6 @@ def configure_test_environment():
200192 if not ok :
201193 raise RuntimeError ("Failed to initialize test database" )
202194
203- # Suppression de la seed: chaque test préparera désormais ses propres données
204195 def _seed_database (session ):
205196 # Seed mesh data: id=123456789 -> hat.vtp
206197 if session .get (Data , "123456789" ) is None :
@@ -310,16 +301,10 @@ def _seed_database(session):
310301
311302@pytest .fixture
312303def dataset_factory () -> Callable [..., str ]:
313- """
314- Prépare un dataset pour un test:
315- - copie les fichiers nécessaires dans DATA_FOLDER_PATH/<id>
316- - upsert la ligne correspondante dans la base (table Data)
317- Retourne l'id prêt à l'emploi.
318- """
319304 base_path = os .path .dirname (__file__ )
320305 src_data = os .path .join (base_path , "data" )
321306 data_root = os .environ .get ("DATA_FOLDER_PATH" )
322- assert data_root , "DATA_FOLDER_PATH non défini (assurez-vous que test_config a été appelé) "
307+ assert data_root , "DATA_FOLDER_PATH undefined "
323308
324309 def create_dataset (
325310 * ,
@@ -343,17 +328,14 @@ def _copy_asset(fname: str):
343328 else :
344329 copyfile (src , dst )
345330
346- # Copier fichiers nécessaires
347331 _copy_asset (viewable_file_name )
348332 if native_file_name :
349- # Ne pas échouer si le natif est absent, c'est optionnel suivant les tests
350333 native_src = os .path .join (src_data , native_file_name )
351334 if os .path .exists (native_src ):
352335 _copy_asset (native_file_name )
353336 for fname in additional_files or []:
354337 _copy_asset (fname )
355338
356- # Upsert DB
357339 with db_manager .session_scope () as session :
358340 row = session .get (Data , id )
359341 if row is None :
0 commit comments