Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>t3chguy/playwright-homeservers
parent
40d755af6c
commit
df510dc74b
|
@ -111,9 +111,9 @@ jobs:
|
||||||
# Run multiple instances in parallel to speed up the tests
|
# Run multiple instances in parallel to speed up the tests
|
||||||
runner: ${{ fromJSON(needs.build.outputs.runners-matrix) }}
|
runner: ${{ fromJSON(needs.build.outputs.runners-matrix) }}
|
||||||
project:
|
project:
|
||||||
- Chrome
|
# - Chrome
|
||||||
- Firefox
|
# - Firefox
|
||||||
- WebKit
|
# - WebKit
|
||||||
- Dendrite
|
- Dendrite
|
||||||
- Pinecone
|
- Pinecone
|
||||||
isCron:
|
isCron:
|
||||||
|
|
|
@ -13,8 +13,10 @@ import { type Visibility } from "matrix-js-sdk/src/matrix";
|
||||||
import { test, expect } from "../../element-web-test";
|
import { test, expect } from "../../element-web-test";
|
||||||
import { waitForRoom } from "../utils";
|
import { waitForRoom } from "../utils";
|
||||||
import { Filter } from "../../pages/Spotlight";
|
import { Filter } from "../../pages/Spotlight";
|
||||||
|
import { isDendrite } from "../../plugins/homeserver/dendrite";
|
||||||
|
|
||||||
test.describe("Knock Into Room", () => {
|
test.describe("Knock Into Room", () => {
|
||||||
|
test.skip(isDendrite, "Dendrite does not have support for knocking");
|
||||||
test.use({
|
test.use({
|
||||||
displayName: "Alice",
|
displayName: "Alice",
|
||||||
labsFlags: ["feature_ask_to_join"],
|
labsFlags: ["feature_ask_to_join"],
|
||||||
|
|
|
@ -10,8 +10,10 @@ Please see LICENSE files in the repository root for full details.
|
||||||
|
|
||||||
import { test, expect } from "../../element-web-test";
|
import { test, expect } from "../../element-web-test";
|
||||||
import { waitForRoom } from "../utils";
|
import { waitForRoom } from "../utils";
|
||||||
|
import { isDendrite } from "../../plugins/homeserver/dendrite";
|
||||||
|
|
||||||
test.describe("Manage Knocks", () => {
|
test.describe("Manage Knocks", () => {
|
||||||
|
test.skip(isDendrite, "Dendrite does not have support for knocking");
|
||||||
test.use({
|
test.use({
|
||||||
displayName: "Alice",
|
displayName: "Alice",
|
||||||
labsFlags: ["feature_ask_to_join"],
|
labsFlags: ["feature_ask_to_join"],
|
||||||
|
|
|
@ -11,7 +11,7 @@ Please see LICENSE files in the repository root for full details.
|
||||||
* Only intended to run from within GitHub Actions
|
* Only intended to run from within GitHub Actions
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import type { Reporter, TestCase } from "@playwright/test/reporter";
|
import type { Reporter, Suite, TestCase, FullConfig } from "@playwright/test/reporter";
|
||||||
|
|
||||||
const REPO = "element-hq/element-web";
|
const REPO = "element-hq/element-web";
|
||||||
const LABEL = "Z-Flaky-Test";
|
const LABEL = "Z-Flaky-Test";
|
||||||
|
@ -26,8 +26,16 @@ type PaginationLinks = {
|
||||||
|
|
||||||
class FlakyReporter implements Reporter {
|
class FlakyReporter implements Reporter {
|
||||||
private flakes = new Set<string>();
|
private flakes = new Set<string>();
|
||||||
|
private ignoreSuite = false;
|
||||||
|
|
||||||
|
public onBegin(config: FullConfig, suite: Suite) {
|
||||||
|
const projectName = suite.project().name;
|
||||||
|
// Ignores flakes on Dendrite and Pinecone as they have their own flakes we do not track
|
||||||
|
this.ignoreSuite = ["Dendrite", "Pinecone"].includes(projectName);
|
||||||
|
}
|
||||||
|
|
||||||
public onTestEnd(test: TestCase): void {
|
public onTestEnd(test: TestCase): void {
|
||||||
|
if (this.ignoreSuite) return;
|
||||||
const title = `${test.location.file.split("playwright/e2e/")[1]}: ${test.title}`;
|
const title = `${test.location.file.split("playwright/e2e/")[1]}: ${test.title}`;
|
||||||
if (test.outcome() === "flaky") {
|
if (test.outcome() === "flaky") {
|
||||||
this.flakes.add(title);
|
this.flakes.add(title);
|
||||||
|
|
Loading…
Reference in New Issue