summaryrefslogtreecommitdiff
path: root/graph/test_browser.py
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2026-09-22 09:32:07 -0700
committerCliff Click <cliffc@acm.org>2026-09-22 09:32:07 -0700
commit1d961838cff168a101069d08a8ab6594f49f0911 (patch)
treef832576181cc396c033707508a50e3d72120b8c6 /graph/test_browser.py
parent92e3013a4cab12747af9d5484e7caad6fc454b1e (diff)
downloadSimple-1d961838cff168a101069d08a8ab6594f49f0911.tar.gz
Simple-1d961838cff168a101069d08a8ab6594f49f0911.zip
Graph viewer on ch4 and25
Diffstat (limited to 'graph/test_browser.py')
-rw-r--r--graph/test_browser.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/graph/test_browser.py b/graph/test_browser.py
index dbbfdd59..90223119 100644
--- a/graph/test_browser.py
+++ b/graph/test_browser.py
@@ -23,7 +23,7 @@ from playwright.sync_api import sync_playwright
def check(chapter, browser_name):
number = int(chapter.removeprefix("chapter"))
- package = "com.seaofnodes.simple." + ("print." if number >= 20 else "")
+ package = "com.seaofnodes.simple." + ("print." if number == 4 or number >= 20 else "")
artifacts = ROOT / "build/graph-browser" / (chapter + "-" + browser_name)
artifacts.mkdir(parents=True, exist_ok=True)
log = artifacts / "compiler.log"
@@ -53,8 +53,9 @@ def check(chapter, browser_name):
page.wait_for_function("current === 1 && !rendering")
page.locator("#doPrev").click()
page.wait_for_function("current === 0 && !rendering")
- for source in ("return 1 + 2;",
- "int x=0; while(x<arg) { x=x+1; } return x;"):
+ sources = ("return 1 + 2;", "int x=arg+1; return x+x+2;" if number == 4 else
+ "int x=0; while(x<arg) { x=x+1; } return x;")
+ for source in sources:
previous = page.evaluate("generation")
page.locator("#program").fill(source)
page.locator("#compile").click()
@@ -68,7 +69,7 @@ def check(chapter, browser_name):
page.wait_for_function("index => current === index && !rendering", arg=index)
assert page.locator("#doNext").is_disabled()
assert "error" not in page.locator("#status").inner_text().lower()
- if number == 25:
+ if number in (4, 25):
assert page.locator("#elk g.node").count() == page.evaluate("frames[current].snap.nodes.length")
# Revisit cached geometry and keep the selected node across steps.
page.evaluate("""() => {