@@ -60,9 +60,9 @@ def router(layout_manager: LayoutManager) -> APIRouter:
6060
6161 @ui .page ("/" , api_router = router )
6262 async def index ():
63- ui .label ("BEFORE_LABEL " )
63+ ui .label ("BEFORE_CORPUS " )
6464 layout_manager .draw ()
65- ui .label ("AFTER_LABEL " )
65+ ui .label ("AFTER_CORPUS " )
6666
6767 return router
6868
@@ -176,8 +176,8 @@ def _friend_or_pet_ui() -> None:
176176 self .display_model .on_type_change ("companion" , _friend_or_pet_ui .refresh )
177177
178178
179- async def _ensure_before_label (async_page : Page ) -> None :
180- await assert_contains_text (async_page , "BEFORE_LABEL " )
179+ async def _ensure_before_corpus (async_page : Page ) -> None :
180+ await assert_contains_text (async_page , "BEFORE_CORPUS " )
181181
182182
183183async def _ensure_person_name (async_page : Page , name : str ) -> None :
@@ -197,19 +197,19 @@ async def _esnure_person_companion(async_page: Page, companion: Pet | Friend) ->
197197 await assert_contains_text (async_page , f"Friend Age: { companion .age } " )
198198
199199
200- async def _ensure_after_label (async_page : Page ) -> None :
201- await assert_contains_text (async_page , "AFTER_LABEL " )
200+ async def _ensure_after_corpus (async_page : Page ) -> None :
201+ await assert_contains_text (async_page , "AFTER_CORPUS " )
202202
203203
204204async def _ensure_index_page (async_page : Page , person : Person ) -> None :
205- await _ensure_before_label (async_page )
205+ await _ensure_before_corpus (async_page )
206206
207207 await _ensure_person_name (async_page , person .name )
208208 await _ensure_person_age (async_page , person .age )
209209
210210 await _esnure_person_companion (async_page , person .companion )
211211
212- await _ensure_after_label (async_page )
212+ await _ensure_after_corpus (async_page )
213213
214214
215215async def _ensure_companion_not_present (async_page : Page ) -> None :
@@ -271,20 +271,22 @@ def _get_updatable_display_model_ids(obj: BaseUpdatableDisplayModel) -> dict[int
271271async def test_updatable_component (
272272 app_runner : None ,
273273 async_page : Page ,
274+ layout_manager : LayoutManager ,
274275 mount_path : str ,
275276 server_host_port : str ,
276277 person : Person ,
277278 person_update : Person ,
278279 expect_same_companion_object : bool ,
279280 expected_callbacks_count : NonNegativeInt ,
280- layout_manager : LayoutManager ,
281281):
282282 def _index_corpus () -> None :
283283 PersonComponent (person ).display ()
284284
285285 layout_manager .set (_index_corpus )
286286
287287 await async_page .goto (f"{ server_host_port } { mount_path } " )
288+ await _ensure_before_corpus (async_page )
289+ await _ensure_after_corpus (async_page )
288290 print ("✅ index page loaded" )
289291
290292 # check initial page layout
@@ -308,10 +310,33 @@ def _index_corpus() -> None:
308310 person .remove_from_ui ()
309311 await _ensure_person_not_present (async_page )
310312
311- await _ensure_before_label (async_page )
312- await _ensure_after_label (async_page )
313+ await _ensure_before_corpus (async_page )
314+ await _ensure_after_corpus (async_page )
313315
314316
315317# TODO: add a test where I have 10 Persons Rendered on the page
316318# Add add a way to remove and add them to the page based on a model to which we add or remove stuff
317319# might require some special facilities in the BaseUpdatableComponent
320+
321+
322+ async def test_multiple_componenets_management (
323+ app_runner : None ,
324+ async_page : Page ,
325+ layout_manager : LayoutManager ,
326+ mount_path : str ,
327+ server_host_port : str ,
328+ ):
329+ def _index_corpus () -> None :
330+ # TODO: crate something that updates a dict[str, BaseUpdatableDisplayModel]
331+ # this should add and remove elements to the UI with the keys
332+ # This should be a component
333+
334+ # PersonComponent(person).display()
335+ pass
336+
337+ layout_manager .set (_index_corpus )
338+
339+ await async_page .goto (f"{ server_host_port } { mount_path } " )
340+ await _ensure_before_corpus (async_page )
341+ await _ensure_after_corpus (async_page )
342+ print ("✅ index page loaded" )
0 commit comments