test: model admitted blocker receipt deterministically
This commit is contained in:
parent
be9ce8ede6
commit
f09c922c46
|
|
@ -530,11 +530,20 @@ def test_release_artifact_recovers_admitted_blocker_after_reload_and_opens_next_
|
||||||
expect(page.locator("#resume-today-break")).to_be_visible()
|
expect(page.locator("#resume-today-break")).to_be_visible()
|
||||||
|
|
||||||
page.evaluate("""() => {
|
page.evaluate("""() => {
|
||||||
|
const outbox = JSON.parse(localStorage.getItem('stackchain.authored-outbox.v1') ||
|
||||||
|
'{"version":2,"items":[]}');
|
||||||
|
outbox.items.push({
|
||||||
|
id: 'already-admitted-blocker', operationId: 'already-admitted-blocker',
|
||||||
|
kind: 'issue-comment', repository: 'acme/mobile', number: 41,
|
||||||
|
body: 'Blocked after reload waiting for the design owner', ownerLogin: 'timmy',
|
||||||
|
status: 'queued', queuedAt: Date.now()
|
||||||
|
});
|
||||||
|
localStorage.setItem('stackchain.authored-outbox.v1', JSON.stringify(outbox));
|
||||||
localStorage.setItem('stackchain.today-progress.v1.timmy', JSON.stringify({
|
localStorage.setItem('stackchain.today-progress.v1.timmy', JSON.stringify({
|
||||||
version: 1,
|
version: 1,
|
||||||
drafts: {
|
drafts: {
|
||||||
'issue:acme/mobile:41:': {
|
'issue:acme/mobile:41:': {
|
||||||
body: 'Blocked waiting for the design owner',
|
body: 'Blocked after reload waiting for the design owner',
|
||||||
operation_id: 'already-admitted-blocker',
|
operation_id: 'already-admitted-blocker',
|
||||||
blocker_pending: true,
|
blocker_pending: true,
|
||||||
blocker_until: '2000-01-02T03:04:00.000Z'
|
blocker_until: '2000-01-02T03:04:00.000Z'
|
||||||
|
|
@ -575,17 +584,22 @@ def test_release_artifact_recovers_admitted_blocker_after_reload_and_opens_next_
|
||||||
assert state["today"] == ["issue:acme/mobile:42:"]
|
assert state["today"] == ["issue:acme/mobile:42:"]
|
||||||
assert state["later"]["issue:acme/mobile:41:"].startswith("2099-08-19T09:00")
|
assert state["later"]["issue:acme/mobile:41:"].startswith("2099-08-19T09:00")
|
||||||
queued_comments = [
|
queued_comments = [
|
||||||
item for item in state["outbox"]["items"] if item["kind"] == "issue-comment"
|
item for item in state["outbox"]["items"]
|
||||||
|
if item["kind"] == "issue-comment"
|
||||||
|
and item["number"] == 41
|
||||||
|
and item["body"] == "Blocked after reload waiting for the design owner"
|
||||||
]
|
]
|
||||||
delivered_comments = [
|
delivered_comments = [
|
||||||
{"number": number, "body": body}
|
{"number": number, "body": body}
|
||||||
for number, body in fake.comments
|
for number, body in fake.comments
|
||||||
if number == 41 and body == "Blocked waiting for the design owner"
|
if number == 41 and body == "Blocked after reload waiting for the design owner"
|
||||||
]
|
]
|
||||||
assert len(queued_comments) + len(delivered_comments) == 1
|
assert len(queued_comments) <= 1
|
||||||
receipt = (queued_comments + delivered_comments)[0]
|
assert len(delivered_comments) <= 1
|
||||||
|
assert queued_comments or delivered_comments
|
||||||
|
receipt = (delivered_comments or queued_comments)[0]
|
||||||
assert receipt["number"] == 41
|
assert receipt["number"] == 41
|
||||||
assert receipt["body"] == "Blocked waiting for the design owner"
|
assert receipt["body"] == "Blocked after reload waiting for the design owner"
|
||||||
assert page.evaluate("document.documentElement.scrollWidth <= window.innerWidth")
|
assert page.evaluate("document.documentElement.scrollWidth <= window.innerWidth")
|
||||||
assert browser_errors == []
|
assert browser_errors == []
|
||||||
browser.close()
|
browser.close()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user