SEC-10095 test(cypress): demote unstable tests (#36099)
* test(cypress): demote unstable tests * follow fixes * fix merging playwright reports
Этот коммит содержится в:
12
.github/workflows/e2e-tests-playwright-template.yml
поставляемый
12
.github/workflows/e2e-tests-playwright-template.yml
поставляемый
@@ -228,16 +228,8 @@ jobs:
|
|||||||
mkdir -p results/reporter
|
mkdir -p results/reporter
|
||||||
|
|
||||||
# Merge blob reports using Playwright merge-reports (per docs)
|
# Merge blob reports using Playwright merge-reports (per docs)
|
||||||
# Pin version to match the one used to generate blob reports (avoids format mismatch)
|
npm install --no-save @playwright/test
|
||||||
PW_VERSION=$(node -e "const p=require('./package.json');process.stdout.write(p.dependencies?.['@playwright/test']||p.devDependencies?.['@playwright/test']||'')")
|
npx playwright merge-reports --config merge.config.mjs ./shard-results/results/blob-report/
|
||||||
npm install --no-save @playwright/test@${PW_VERSION}
|
|
||||||
npx playwright merge-reports --config merge.config.mjs ./shard-results/results/blob-report/ || true
|
|
||||||
|
|
||||||
# If merge-reports produced no results.json (no blob reports), fall back to
|
|
||||||
# the json reporter output written directly by the test shard
|
|
||||||
if [ ! -f results/reporter/results.json ] && [ -f shard-results/results/reporter/results.json ]; then
|
|
||||||
cp shard-results/results/reporter/results.json results/reporter/results.json
|
|
||||||
fi
|
|
||||||
- name: ci/calculate
|
- name: ci/calculate
|
||||||
id: calculate
|
id: calculate
|
||||||
uses: ./.github/actions/calculate-playwright-results
|
uses: ./.github/actions/calculate-playwright-results
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ mme2e_wait_image () {
|
|||||||
IMAGE_NAME=${1?}
|
IMAGE_NAME=${1?}
|
||||||
RETRIES_LEFT=${2:-1}
|
RETRIES_LEFT=${2:-1}
|
||||||
RETRIES_INTERVAL=${3:-10}
|
RETRIES_INTERVAL=${3:-10}
|
||||||
mme2e_wait_command_success "docker pull $IMAGE_NAME" "Waiting for docker image ${IMAGE_NAME} to be available" "$RETRIES_LEFT" "$RETRIES_INTERVAL"
|
mme2e_wait_command_success "docker pull --platform linux/amd64 $IMAGE_NAME" "Waiting for docker image ${IMAGE_NAME} to be available" "$RETRIES_LEFT" "$RETRIES_INTERVAL"
|
||||||
}
|
}
|
||||||
mme2e_is_token_in_list() {
|
mme2e_is_token_in_list() {
|
||||||
local TOKEN=$1
|
local TOKEN=$1
|
||||||
|
|||||||
@@ -14,13 +14,16 @@ cd "$(dirname "$0")"
|
|||||||
: ${WEBHOOK_URL:-} # Optional. Mattermost webhook to post the report back to
|
: ${WEBHOOK_URL:-} # Optional. Mattermost webhook to post the report back to
|
||||||
: ${RELEASE_DATE:-} # Optional. If set, its value will be included in the report as the release date of the tested artifact
|
: ${RELEASE_DATE:-} # Optional. If set, its value will be included in the report as the release date of the tested artifact
|
||||||
if [ "$TYPE" = "PR" ]; then
|
if [ "$TYPE" = "PR" ]; then
|
||||||
# In this case, we expect the PR number to be present in the BRANCH variable
|
# Try to determine PR number: first from PR_NUMBER, then from BRANCH (server-pr-XXXX format)
|
||||||
BRANCH_REGEX='^server-pr-[0-9]+$'
|
if [ -n "${PR_NUMBER:-}" ]; then
|
||||||
if ! grep -qE "${BRANCH_REGEX}" <<<"$BRANCH"; then
|
export PULL_REQUEST="https://github.com/mattermost/mattermost/pull/${PR_NUMBER}"
|
||||||
mme2e_log "Error: when using TYPE=PR, the BRANCH variable should respect regex '$BRANCH_REGEX'. Aborting." >&2
|
elif grep -qE '^server-pr-[0-9]+$' <<<"${BRANCH:-}"; then
|
||||||
exit 1
|
PR_NUMBER="${BRANCH##*-}"
|
||||||
|
export PULL_REQUEST="https://github.com/mattermost/mattermost/pull/${PR_NUMBER}"
|
||||||
|
else
|
||||||
|
mme2e_log "Warning: TYPE=PR but cannot determine PR number from PR_NUMBER or BRANCH. Falling back to TYPE=NONE."
|
||||||
|
TYPE=NONE
|
||||||
fi
|
fi
|
||||||
export PULL_REQUEST="https://github.com/mattermost/mattermost/pull/${BRANCH##*-}"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Env vars used during the test. Their values will be included in the report
|
# Env vars used during the test. Their values will be included in the report
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ generate_docker_compose_file() {
|
|||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: \${SERVER_IMAGE}
|
image: \${SERVER_IMAGE}
|
||||||
|
platform: linux/amd64
|
||||||
restart: always
|
restart: always
|
||||||
env_file:
|
env_file:
|
||||||
- "./.env.server"
|
- "./.env.server"
|
||||||
@@ -81,7 +82,7 @@ $(for service in $ENABLED_DOCKER_SERVICES; do
|
|||||||
$(if mme2e_is_token_in_list "postgres" "$ENABLED_DOCKER_SERVICES"; then
|
$(if mme2e_is_token_in_list "postgres" "$ENABLED_DOCKER_SERVICES"; then
|
||||||
echo '
|
echo '
|
||||||
postgres:
|
postgres:
|
||||||
image: mattermostdevelopment/mirrored-postgres:13
|
image: mattermostdevelopment/mirrored-postgres:14
|
||||||
restart: "no"
|
restart: "no"
|
||||||
network_mode: host
|
network_mode: host
|
||||||
networks: !reset []
|
networks: !reset []
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ EOF
|
|||||||
|
|
||||||
# Run Playwright test
|
# Run Playwright test
|
||||||
# NB: do not exit the script if some testcases fail
|
# NB: do not exit the script if some testcases fail
|
||||||
${MME2E_DC_SERVER} exec -i -u "$MME2E_UID" -- playwright bash -c "cd e2e-tests/playwright && npm run test:ci -- ${TEST_FILTER}" | tee ../playwright/logs/playwright.log || true
|
${MME2E_DC_SERVER} exec -i -u "$MME2E_UID" -- playwright bash -c "cd e2e-tests/playwright && npm run test:ci -- ${TEST_FILTER} ${PW_SHARD:-}" | tee ../playwright/logs/playwright.log || true
|
||||||
|
|
||||||
# Collect run results
|
# Collect run results
|
||||||
# Documentation on the results.json file: https://playwright.dev/docs/api/class-testcase#test-case-expected-status
|
# Documentation on the results.json file: https://playwright.dev/docs/api/class-testcase#test-case-expected-status
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @accessibility
|
// Group: @channels @accessibility
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @accessibility
|
// Group: @channels @accessibility
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @account_setting
|
// Group: @channels @account_setting
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @account_setting
|
// Group: @channels @account_setting
|
||||||
|
|
||||||
describe('Account Settings', () => {
|
describe('Account Settings', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @channel
|
// Group: @channels @channel
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @channel
|
// Group: @channels @channel
|
||||||
|
|
||||||
import {getAdminAccount} from '../../../support/env';
|
import {getAdminAccount} from '../../../support/env';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @system_console @authentication
|
// Group: @channels @system_console @authentication
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging @benchmark
|
// Group: @channels @messaging @benchmark
|
||||||
|
|
||||||
import {reportBenchmarkResults} from '../../../utils/benchmark';
|
import {reportBenchmarkResults} from '../../../utils/benchmark';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @channel @rhs
|
// Group: @channels @channel @rhs
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @dm_category
|
// Group: @channels @dm_category
|
||||||
|
|
||||||
import * as MESSAGES from '../../../fixtures/messages';
|
import * as MESSAGES from '../../../fixtures/messages';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @channel_sidebar
|
// Group: @channels @channel_sidebar
|
||||||
|
|
||||||
import {
|
import {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @collapsed_reply_threads
|
// Group: @channels @collapsed_reply_threads
|
||||||
|
|
||||||
import {Channel} from '@mattermost/types/channels';
|
import {Channel} from '@mattermost/types/channels';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @custom_status
|
// Group: @channels @custom_status
|
||||||
|
|
||||||
import moment from 'moment-timezone';
|
import moment from 'moment-timezone';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @custom_status
|
// Group: @channels @custom_status
|
||||||
|
|
||||||
describe('Custom Status - Setting a Custom Status', () => {
|
describe('Custom Status - Setting a Custom Status', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @not_cloud @system_console
|
// Group: @channels @enterprise @not_cloud @system_console
|
||||||
|
|
||||||
describe('MM-T2574 Session Lengths', () => {
|
describe('MM-T2574 Session Lengths', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @guest_account
|
// Group: @channels @enterprise @guest_account
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @ldap
|
// Group: @channels @enterprise @ldap
|
||||||
|
|
||||||
import {Channel} from '@mattermost/types/channels';
|
import {Channel} from '@mattermost/types/channels';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @ldap
|
// Group: @channels @enterprise @ldap
|
||||||
|
|
||||||
import ldapUsers from '../../../../fixtures/ldap_users.json';
|
import ldapUsers from '../../../../fixtures/ldap_users.json';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @ldap_group
|
// Group: @channels @enterprise @ldap_group
|
||||||
|
|
||||||
describe('LDAP Group Sync - Test channel public/private toggle', () => {
|
describe('LDAP Group Sync - Test channel public/private toggle', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @profile_popover
|
// Group: @channels @enterprise @profile_popover
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @not_cloud @system_console @license_removal
|
// Group: @channels @enterprise @not_cloud @system_console @license_removal
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @system_console @mfa
|
// Group: @channels @enterprise @system_console @mfa
|
||||||
|
|
||||||
import ldapUsers from '../../../../fixtures/ldap_users.json';
|
import ldapUsers from '../../../../fixtures/ldap_users.json';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise
|
// Group: @channels @enterprise
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @system_console
|
// Group: @channels @enterprise @system_console
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @e20_only @not_cloud @system_console
|
// Group: @channels @enterprise @e20_only @not_cloud @system_console
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @system_console
|
// Group: @channels @enterprise @system_console
|
||||||
|
|
||||||
import {getAdminAccount} from '../../../../support/env';
|
import {getAdminAccount} from '../../../../support/env';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise
|
// Group: @channels @enterprise
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @system_console
|
// Group: @channels @enterprise @system_console
|
||||||
|
|
||||||
import {getAdminAccount} from '../../../../support/env';
|
import {getAdminAccount} from '../../../../support/env';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @files_and_attachments
|
// Group: @channels @files_and_attachments
|
||||||
|
|
||||||
describe('Image Link Preview', () => {
|
describe('Image Link Preview', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @integrations
|
// Group: @channels @integrations
|
||||||
|
|
||||||
import * as MESSAGES from '../../../../fixtures/messages';
|
import * as MESSAGES from '../../../../fixtures/messages';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @incoming_webhook
|
// Group: @channels @incoming_webhook
|
||||||
|
|
||||||
describe('Incoming webhook', () => {
|
describe('Incoming webhook', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @incoming_webhook
|
// Group: @channels @incoming_webhook
|
||||||
|
|
||||||
import {enableUsernameAndIconOverride} from './helpers';
|
import {enableUsernameAndIconOverride} from './helpers';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @incoming_webhook
|
// Group: @channels @incoming_webhook
|
||||||
|
|
||||||
import {getRandomId} from '../../../../utils';
|
import {getRandomId} from '../../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @integrations
|
// Group: @channels @integrations
|
||||||
|
|
||||||
describe('Integrations', () => {
|
describe('Integrations', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @incoming_webhook
|
// Group: @channels @incoming_webhook
|
||||||
|
|
||||||
import {getRandomId} from '../../../../utils';
|
import {getRandomId} from '../../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @integrations
|
// Group: @channels @integrations
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @integrations
|
// Group: @channels @integrations
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @interactive_menu
|
// Group: @channels @interactive_menu
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @keyboard_shortcuts
|
// Group: @channels @keyboard_shortcuts
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @keyboard_shortcuts
|
// Group: @channels @keyboard_shortcuts
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @markdown @not_cloud
|
// Group: @channels @markdown @not_cloud
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
function emojiVerification(postId) {
|
function emojiVerification(postId) {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// Use element ID when selecting an element. Create one if none.
|
// Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// Use element ID when selecting an element. Create one if none.
|
// Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Image attachment', () => {
|
describe('Image attachment', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Message', () => {
|
describe('Message', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @not_cloud @messaging @plugin
|
// Group: @channels @not_cloud @messaging @plugin
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// Use element ID when selecting an element. Create one if none.
|
// Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
const pinnedPosts = [];
|
const pinnedPosts = [];
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Message reply scrollable', () => {
|
describe('Message reply scrollable', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Message', () => {
|
describe('Message', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// Use element ID when selecting an element. Create one if none.
|
// Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging
|
// Group: @channels @messaging
|
||||||
|
|
||||||
describe('Messaging', () => {
|
describe('Messaging', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @messaging @plugin @not_cloud
|
// Group: @channels @messaging @plugin @not_cloud
|
||||||
|
|
||||||
import {demoPlugin} from '../../../utils/plugins';
|
import {demoPlugin} from '../../../utils/plugins';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @notifications
|
// Group: @channels @notifications
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @plugin @plugins_uninstall @not_cloud
|
// Group: @channels @plugin @plugins_uninstall @not_cloud
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @scroll
|
// Group: @channels @scroll
|
||||||
|
|
||||||
import * as MESSAGES from '../../../fixtures/messages';
|
import * as MESSAGES from '../../../fixtures/messages';
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ const timeouts = require('../../../fixtures/timeouts');
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @scroll
|
// Group: @channels @scroll
|
||||||
|
|
||||||
describe('Scroll', () => {
|
describe('Scroll', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @search @not_cloud
|
// Group: @channels @search @not_cloud
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @account_setting
|
// Group: @channels @account_setting
|
||||||
|
|
||||||
import moment from 'moment-timezone';
|
import moment from 'moment-timezone';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @signin_authentication
|
// Group: @channels @signin_authentication
|
||||||
|
|
||||||
import {FixedCloudConfig} from '../../../utils/constants';
|
import {FixedCloudConfig} from '../../../utils/constants';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @enterprise @system_console @announcement_banner
|
// Group: @channels @enterprise @system_console @announcement_banner
|
||||||
|
|
||||||
import {hexToRgbArray, rgbArrayToString} from '../../../../utils';
|
import {hexToRgbArray, rgbArrayToString} from '../../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @system_console
|
// Group: @channels @system_console
|
||||||
|
|
||||||
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
import * as TIMEOUTS from '../../../../fixtures/timeouts';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @system_console
|
// Group: @channels @system_console
|
||||||
|
|
||||||
import {
|
import {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @team_settings
|
// Group: @channels @team_settings
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @notification
|
// Group: @channels @notification
|
||||||
|
|
||||||
describe('Verify users can receive notification on browser', () => {
|
describe('Verify users can receive notification on browser', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @toast
|
// Group: @channels @toast
|
||||||
|
|
||||||
describe('Toast', () => {
|
describe('Toast', () => {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
// - Use element ID when selecting an element. Create one if none.
|
// - Use element ID when selecting an element. Create one if none.
|
||||||
// ***************************************************************
|
// ***************************************************************
|
||||||
|
|
||||||
// Stage: @prod
|
|
||||||
// Group: @channels @toast
|
// Group: @channels @toast
|
||||||
|
|
||||||
import {getRandomId} from '../../../utils';
|
import {getRandomId} from '../../../utils';
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ export default defineConfig({
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
reporter: [
|
reporter: [
|
||||||
|
...(testConfig.isCI ? [['blob', {outputDir: './results/blob-report'}] as const] : []),
|
||||||
['html', {open: 'never', outputFolder: './results/reporter'}],
|
['html', {open: 'never', outputFolder: './results/reporter'}],
|
||||||
['json', {outputFile: './results/reporter/results.json'}],
|
['json', {outputFile: './results/reporter/results.json'}],
|
||||||
['junit', {outputFile: './results/reporter/results.xml'}],
|
['junit', {outputFile: './results/reporter/results.xml'}],
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ test('Should show channel banner when configured', async ({pw}) => {
|
|||||||
|
|
||||||
await configurationTab.enableChannelBanner();
|
await configurationTab.enableChannelBanner();
|
||||||
await configurationTab.setChannelBannerText('Example channel banner text');
|
await configurationTab.setChannelBannerText('Example channel banner text');
|
||||||
await configurationTab.setChannelBannerTextColor('#77DD88');
|
await configurationTab.setChannelBannerTextColor('77DD88');
|
||||||
|
|
||||||
await configurationTab.save();
|
await configurationTab.save();
|
||||||
await settingsModal.closeModal();
|
await settingsModal.closeModal();
|
||||||
@@ -65,7 +65,7 @@ test('Should render markdown', async ({pw}) => {
|
|||||||
|
|
||||||
await configurationTab.enableChannelBanner();
|
await configurationTab.enableChannelBanner();
|
||||||
await configurationTab.setChannelBannerText('**bold** *italic* ~~strikethrough~~');
|
await configurationTab.setChannelBannerText('**bold** *italic* ~~strikethrough~~');
|
||||||
await configurationTab.setChannelBannerTextColor('#77DD88');
|
await configurationTab.setChannelBannerTextColor('77DD88');
|
||||||
|
|
||||||
await configurationTab.save();
|
await configurationTab.save();
|
||||||
await settingsModal.closeModal();
|
await settingsModal.closeModal();
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ test('should be able to enable mobile security settings when licensed', async ({
|
|||||||
const license = await adminClient.getClientLicenseOld();
|
const license = await adminClient.getClientLicenseOld();
|
||||||
|
|
||||||
test.skip(
|
test.skip(
|
||||||
license.SkuShortName !== 'enterprise' || license.short_sku_name !== 'advanced',
|
license.SkuShortName !== 'enterprise' && license.SkuShortName !== 'advanced',
|
||||||
'Skipping test - server has no enterprise or enterprise advanced license',
|
'Skipping test - server has no enterprise or enterprise advanced license',
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -162,7 +162,10 @@ test('should show mobile security upsell when not licensed', async ({pw}) => {
|
|||||||
|
|
||||||
const license = await adminClient.getClientLicenseOld();
|
const license = await adminClient.getClientLicenseOld();
|
||||||
|
|
||||||
test.skip(license.SkuShortName === 'enterprise', 'Skipping test - server has enterprise license');
|
test.skip(
|
||||||
|
license.SkuShortName === 'enterprise' || license.SkuShortName === 'advanced',
|
||||||
|
'Skipping test - server has enterprise or enterprise advanced license',
|
||||||
|
);
|
||||||
|
|
||||||
if (!adminUser) {
|
if (!adminUser) {
|
||||||
throw new Error('Failed to create admin user');
|
throw new Error('Failed to create admin user');
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user