| 323 | assert div.classes == {expected_class} |
| 324 | |
| 325 | def test_add_remove_class(self): |
| 326 | id_ = "div-no-classes" |
| 327 | classname = "tester-class" |
| 328 | div = web.page[f"#{id_}"] |
| 329 | assert not div.classes |
| 330 | div.classes.add(classname) |
| 331 | assert div.classes == {classname} |
| 332 | div.classes.remove(classname) |
| 333 | assert div.classes == set() |
| 334 | # Handle multiple classes in a single string |
| 335 | multiple_classes = "class1 class2 class3" |
| 336 | div.classes.add(multiple_classes) |
| 337 | assert div.classes == {"class1", "class2", "class3"} |
| 338 | div.classes.remove("class2 class3") |
| 339 | assert div.classes == {"class1"} |
| 340 | # Remove the final class |
| 341 | div.classes.remove("class1") |
| 342 | # Removing a non-existent class should not raise an error. |
| 343 | div.classes.remove("non-existent-class") |
| 344 | |
| 345 | async def test_when_decorator(self): |
| 346 | called = False |