FIX: Flaky tests

We had acceptance tests that were testing the contents of the post
stream preview, not the contents of the eventual topic itself.

This became apparent when I introduced a new promise which caused the
tests to finish waiting for work properly. Before that, it was up to the
speed of the execution, very spooky!
This commit is contained in:
Robin Ward 2019-10-11 15:33:34 -04:00
parent c5d03c30ca
commit 342bbe66dd
5 changed files with 6 additions and 27 deletions

View File

@ -7,6 +7,7 @@ QUnit.test("category hashtag is cooked properly", async assert => {
await click("#topic-footer-buttons .btn.create");
await fillIn(".d-editor-input", "this is a category hashtag #bug");
// TODO: Test that the autocomplete shows
assert.equal(
find(".d-editor-preview:visible")
@ -14,12 +15,4 @@ QUnit.test("category hashtag is cooked properly", async assert => {
.trim(),
'<p>this is a category hashtag <a href="/c/bugs" class="hashtag">#<span>bug</span></a></p>'
);
await click("#reply-control .btn.create");
assert.equal(
find(".topic-post:last .cooked p")
.html()
.trim(),
'this is a category hashtag <a href="/c/bugs" class="hashtag">#<span>bug</span></a>'
);
});

View File

@ -249,7 +249,7 @@ QUnit.test("Create a Reply", async assert => {
await click("#reply-control button.create");
assert.equal(
find(".cooked:last p").text(),
"this is the content of my reply"
"If you use gettext format you could leverage Launchpad 13 translations and the community behind it."
);
});
@ -266,7 +266,7 @@ QUnit.test("Posting on a different topic", async assert => {
await click(".btn-reply-here");
assert.equal(
find(".cooked:last p").text(),
"this is the content for a different topic"
"If you use gettext format you could leverage Launchpad 13 translations and the community behind it."
);
});

View File

@ -14,14 +14,6 @@ QUnit.test("emoji is cooked properly", async assert => {
.trim(),
`<p>this is an emoji <img src="/images/emoji/emoji_one/blonde_woman.png?v=${v}" title=":blonde_woman:" class="emoji" alt=":blonde_woman:"></p>`
);
await click("#reply-control .btn.create");
assert.equal(
find(".topic-post:last .cooked p")
.html()
.trim(),
`this is an emoji <img src="/images/emoji/emoji_one/blonde_woman.png?v=${v}" title=":blonde_woman:" class="emoji" alt=":blonde_woman:">`
);
});
QUnit.test("skin toned emoji is cooked properly", async assert => {

View File

@ -24,12 +24,4 @@ QUnit.test("tag is cooked properly", async assert => {
.trim(),
'<p>this is a tag hashtag <a href="/tags/monkey" class="hashtag">#<span>monkey</span></a></p>'
);
await click("#reply-control .btn.create");
assert.equal(
find(".topic-post:last .cooked")
.html()
.trim(),
'<p>this is a tag hashtag <a href="/tags/monkey" class="hashtag">#<span>monkey</span></a></p>'
);
});

View File

@ -199,7 +199,9 @@ export default function() {
this.get("/t/280.json", () => response(fixturesByUrl["/t/280/1.json"]));
this.get("/t/34.json", () => response(fixturesByUrl["/t/34/1.json"]));
this.get("/t/280/20.json", () => response(fixturesByUrl["/t/280/1.json"]));
this.get("/t/280/:post_number.json", () =>
response(fixturesByUrl["/t/280/1.json"])
);
this.get("/t/28830.json", () => response(fixturesByUrl["/t/28830/1.json"]));
this.get("/t/9.json", () => response(fixturesByUrl["/t/9/1.json"]));
this.get("/t/12.json", () => response(fixturesByUrl["/t/12/1.json"]));