Tooltips after one second, and at once for the next button
From the development repository at b7ffe0e. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
bc3c9bb886
commit
fcd6117618
5 files changed
+64
-10
No files matched your search
@@ -880,6 +880,42 @@ class EndToEndTest(unittest.TestCase):
|
||||
firefox.switch_to(host_tab)
|
||||
firefox.go("about:blank")
|
||||
|
||||
def test_tooltips(self):
|
||||
"""A button's explanation appears after the pointer has been in it
|
||||
for a second; once one is showing, a neighbour's appears at once;
|
||||
a press ends that."""
|
||||
firefox = self.firefox
|
||||
firefox.go(self.address("Late"))
|
||||
self.enter_name("Reader", "start_session")
|
||||
self.wait_until(lambda s: s["page"]["number"] == 1, "the page")
|
||||
hover = lambda tool: firefox.run("""
|
||||
document.querySelector('[data-tool=' + arguments[0] + ']')
|
||||
.dispatchEvent(new PointerEvent('pointerover', {bubbles: true, pointerType: 'pen'}));
|
||||
""", tool)
|
||||
showing = lambda: firefox.run("""
|
||||
const t = document.querySelector('.tooltip');
|
||||
return t && !t.hidden ? t.textContent.slice(0, 20) : null;
|
||||
""")
|
||||
hover("pen")
|
||||
time.sleep(0.5)
|
||||
self.assertIsNone(showing())
|
||||
time.sleep(0.8)
|
||||
self.assertEqual(showing(), "Write on the page. O")
|
||||
# The neighbour rule: the next tooltip comes without the wait.
|
||||
firefox.run("document.body.dispatchEvent(new PointerEvent('pointerover', {bubbles: true}));")
|
||||
self.assertIsNone(showing())
|
||||
hover("text")
|
||||
time.sleep(0.1)
|
||||
self.assertEqual(showing(), "Type on the page. Ta")
|
||||
# A press ends the tooltip and the rule.
|
||||
firefox.run("document.body.dispatchEvent(new PointerEvent('pointerdown', {bubbles: true}));")
|
||||
self.assertIsNone(showing())
|
||||
hover("pen")
|
||||
time.sleep(0.5)
|
||||
self.assertIsNone(showing())
|
||||
time.sleep(0.8)
|
||||
self.assertEqual(showing(), "Write on the page. O")
|
||||
|
||||
def test_hide_rectangles(self):
|
||||
"""The teacher's requests of 2026-10-08: a Hide rectangle covers part
|
||||
of the page in white for everyone, marked by blue corners."""
|
||||
|
||||
Reference in new issue
Block a user