test: fix flaky test (#2134)

This commit is contained in:
Nolan Lawson 2022-04-30 14:20:22 -07:00 committed by GitHub
parent 58d81a25ad
commit 8685e4f603
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -202,24 +202,40 @@ test('complex thread is in correct order - with ancestors', async t => {
test('complex thread is in correct order - with mixed self-replies', async t => {
const { id: a } = await postAs('foobar', 'a')
await sleep(1000)
const { id: b } = await postReplyAs('baz', 'b', a)
await sleep(1000)
const { id: c } = await postReplyAs('baz', 'c', b)
await sleep(1000)
const { id: a1 } = await postReplyAs('baz', 'a1', a)
await sleep(1000)
const { id: d } = await postReplyAs('baz', 'd', c)
await sleep(1000)
const { id: a2 } = await postReplyAs('baz', 'a2', a1)
await sleep(1000)
const { id: b1 } = await postReplyAs('baz', 'b1', b)
await sleep(1000)
const { id: a3 } = await postReplyAs('baz', 'a3', a2)
await sleep(1000)
await postReplyAs('baz', 'e', d)
await sleep(1000)
await postReplyAs('baz', 'b2', b1)
await sleep(1000)
await postReplyAs('baz', 'a4', a3)
await sleep(1000)
await postReplyAs('baz', 'a1a', a1)
await sleep(1000)
// reply chain: foobar -> foobar -> baz -> foobar -> foobar
// when foobar replies to itself after replying to baz, is it promoted?
// see https://github.com/tootsuite/mastodon/pull/9320#issuecomment-440705662
const { id: mixed1 } = await postReplyAs('foobar', 'foobar-mixed1', a)
await sleep(1000)
const { id: mixed2 } = await postReplyAs('baz', 'baz-mixed2', mixed1)
await sleep(1000)
const { id: mixed3 } = await postReplyAs('foobar', 'foobar-mixed3', mixed2)
await sleep(1000)
await postReplyAs('foobar', 'foobar-mixed4', mixed3)
await sleep(2000)
await loginAsFoobar(t)
await t.click(getNthStatus(4))
const order = 'a foobar-mixed1 b c d e b1 b2 a1 a2 a3 a4 a1a baz-mixed2 foobar-mixed3 foobar-mixed4'.split(' ')
@ -229,27 +245,46 @@ test('complex thread is in correct order - with mixed self-replies', async t =>
test('complex thread is in correct order - with mixed self-replies 2', async t => {
const { id: a } = await postAs('foobar', 'a')
await sleep(1000)
const { id: b } = await postReplyAs('baz', 'b', a)
await sleep(1000)
const { id: c } = await postReplyAs('baz', 'c', b)
await sleep(1000)
const { id: a1 } = await postReplyAs('baz', 'a1', a)
await sleep(1000)
const { id: d } = await postReplyAs('baz', 'd', c)
await sleep(1000)
const { id: a2 } = await postReplyAs('baz', 'a2', a1)
await sleep(1000)
const { id: b1 } = await postReplyAs('baz', 'b1', b)
await sleep(1000)
const { id: a3 } = await postReplyAs('baz', 'a3', a2)
await sleep(1000)
await postReplyAs('baz', 'e', d)
await sleep(1000)
await postReplyAs('baz', 'b2', b1)
await sleep(1000)
await postReplyAs('baz', 'a4', a3)
await sleep(1000)
await postReplyAs('baz', 'a1a', a1)
await sleep(1000)
// reply chain: foobar -> foobar -> baz -> foobar -> foobar
// when foobar replies to itself after replying to baz, is it promoted?
// see https://github.com/tootsuite/mastodon/pull/9320#issuecomment-440705662
const { id: mixed1 } = await postReplyAs('foobar', 'foobar-mixed1', a)
await sleep(1000)
const { id: mixed2 } = await postReplyAs('baz', 'baz-mixed2', mixed1)
await sleep(1000)
const { id: mixed3 } = await postReplyAs('foobar', 'foobar-mixed3', mixed2)
await sleep(1000)
await postReplyAs('foobar', 'foobar-mixed4', mixed3)
await sleep(1000)
await postReplyAs('foobar', 'foobar-mixed1a', a)
await sleep(1000)
await postReplyAs('foobar', 'foobar-mixed1b', a)
await sleep(1000)
await postReplyAs('foobar', 'foobar-mixed2a', mixed1)
await sleep(2000)
await loginAsFoobar(t)
await scrollToStatus(t, 7)
await t.click(getNthStatus(7))