mirror of
https://github.com/pyscript/pyscript.git
synced 2025-12-21 11:15:36 -05:00
remove PyWidget and py-register-widget + refactor PyList as a Python Plugin (#1452)
* remove PyWidget and py-register-widget * refactor py-list as Plugin * add newline * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix eslint * handle case if src not supplied * move inside if * - Remove src attribute for py-list - Re-implement as a Python plugin - Remove pylist.py from examples directory - Remove PyListPlugin as one of the default ones * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * move PyItem and PyList classes to the plugin * clean up PyListTemplate and PyItemTemplate from pyscript module * fix linting * use PyList instead of PyListTemplate instead * fix example for todo-pylist * re-enable and improve test * move py-list plugin to examples * fix py-list plugin link --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
@@ -360,15 +360,31 @@ class TestExamples(PyScriptTest):
|
||||
self.assert_no_banners()
|
||||
self.check_tutor_generated_code(modules_to_check=["./utils.py", "./todo.py"])
|
||||
|
||||
@pytest.mark.xfail(reason="fails after introducing synclink, fix me soon!")
|
||||
def test_todo_pylist(self):
|
||||
# XXX improve this test
|
||||
self.goto("examples/todo-pylist.html")
|
||||
self.wait_for_pyscript()
|
||||
assert self.page.title() == "Todo App"
|
||||
wait_for_render(self.page, "*", "<input.*?id=['\"]new-task-content['\"].*?>")
|
||||
todo_input = self.page.locator("input")
|
||||
submit_task_button = self.page.locator("button#new-task-btn")
|
||||
|
||||
todo_input.type("Fold laundry")
|
||||
submit_task_button.click()
|
||||
|
||||
first_task = self.page.locator("div#myList-c-0")
|
||||
assert "Fold laundry" in first_task.inner_text()
|
||||
|
||||
task_checkbox = first_task.locator("input")
|
||||
# Confirm that the new task isn't checked
|
||||
assert not task_checkbox.is_checked()
|
||||
|
||||
# Let's mark it as done now
|
||||
task_checkbox.check()
|
||||
|
||||
# Basic check that the task has the line-through class
|
||||
assert "line-through" in first_task.get_attribute("class")
|
||||
self.assert_no_banners()
|
||||
self.check_tutor_generated_code(modules_to_check=["utils.py", "pylist.py"])
|
||||
self.check_tutor_generated_code(modules_to_check=["utils.py"])
|
||||
|
||||
@pytest.mark.xfail(reason="To be moved to collective and updated, see issue #686")
|
||||
def test_toga_freedom(self):
|
||||
|
||||
Reference in New Issue
Block a user