chromium/chromeos/tast_control.gni

# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/sanitizers/sanitizers.gni")

#~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=
# BEFORE ADDING A TEST HERE: If this is a consistent failure in Chrome on
# ChromeOS CI builders, you should try to find and revert CLs causing new
# regressions. Do not simply disable newly failing tests in tast_control.gni
# as the Chrome uprev will still fail.
#
# Chromimum sheriffs should not disable NEW regressions here. Changes to
# this file require the current CrOS gardener's approval. See go/chrome-sheriff-tast.
#~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=

# WARNING: if you wish to disable a tast test that runs in a ChromeOS SDK
# build, this is the wrong file to edit. You need to mark those tests as
# "informational" in their source .go files.

# To disable a specific test in chrome_all_tast_tests, add the name of the test
# to the following list and cite a bug.
#
# To disable the test only on a specific board, add an at-mark ( @ ) and the
# board name at the end of the entry (eg. "login.Chrome@kevin" disables
# "login.Chrome" test only on "kevin" device). An asterisk is not supported in
# the board name.
#
# As a last resort, you can use an asterisk ( * ) in an entry -- matches every
# substring (eg. "crostini.*" disables the all tests that names are starting
# with "crostini.").
# WARNING: This may cause unexpected disablement and is strongly discouraged.
# You should specify the tests one-by-one in most cases, instead of this.
tast_disabled_tests_from_chrome_all = [
  # https://crbug.com/1282372
  "security.NetworkListenersARC",

  # https://crbug.com/1307940
  "policy.URLCheck.blocklist",

  # https://crbug.com/1312121
  "policy.CookiesBlockedForUrls",

  # http://crbug.com/1335213
  "arc.WindowState.clamshell",

  # http://crbug.com/1363667
  "apps.CalculatorSmoke",

  # b/241122961
  "policy.BlockThirdPartyCookies",

  # b/287525851
  "arc.AudioValidity.playback",
  "arc.AudioValidity.record",
  "arc.BuildProperties",

  # https://crbug.com/1455848
  "arc.CheckAndroidVersion",
  "arc.Downloads",

  # b/344853253
  "borealis.FontCheck@volteer",

  # b/296913657
  "secagentd.ProcessEvents@amd64-generic",

  # b/293976130, NaCl issues on arm64 boards
  "nacl.Pnacl@jacuzzi",
  "nacl.Pnacl@trogdor",
  "terminal.SSH@jacuzzi",
  "terminal.SSH@trogdor",

  # b/314004675
  "filemanager.DrivefsUI.fieldtrial_testing_config_on@reven-vmtest",
  "filemanager.DrivefsUI.fieldtrial_testing_config_off@reven-vmtest",
  "platform.Drivefs@reven-vmtest",

  # b/338111076
  "crostini.AppAndroidStudio.bookworm_clamshell_stable@octopus",

  # b/344945274
  "nacl.Pnacl.lacros@jacuzzi",
  "nacl.Pnacl.lacros@volteer",

  # b/344964853
  "apps.LaunchHelpAppInBrowserMenu.stable_fieldtrial_testing_config_on@betty",

  # b/346793249, b/330290054
  "videoconferencing.OpenCLCacher",

  # b/352753237, Pnacl and terminal.SSH failing only on brya, blocking LKGM
  "nacl.Pnacl@brya",
  "terminal.SSH@brya",

  # b/354218429
  "crostini.LaunchBrowser.bookworm_stable_lacros@betty",

  # b/354660409, tests will be re-enabled after the tast test is updated to work with the new change. Disabling these to unblock uprev and LKGM.
  "inputs.PhysicalKeyboardEmojiSuggestion",
  "inputs.PhysicalKeyboardEmojiSuggestion.guest",
  "inputs.PhysicalKeyboardEmojiSuggestion.guest_lacros",
  "inputs.PhysicalKeyboardEmojiSuggestion.incognito",
  "inputs.PhysicalKeyboardEmojiSuggestion.incognito_lacros",
  "inputs.PhysicalKeyboardEmojiSuggestion.lacros",

  # b/355351792, b/352703668: tests failing on jacuzzi and trogdor.
  "security.SELinuxFilesDataDir.arcvm_user@jacuzzi",
  "security.SELinuxFilesDataDir.arcvm_user@trogdor",

  # b/358087592, re-enable once the test is updated to handle the new
  # PWA change.
  "apps.Sharesheet",

  # b/358376069, b/359411206: These lacros tests are failing at this
  # moment but they will be removed soon.
  "lacros.Activate.keep_alive",
  "lacros.Activate.no_keep_alive",
  "login.Chrome.lacros",
  "security.ChromeSandboxed.lacros",
  "security.GPUSandboxed.lacros",
  "ui.StackSampledMetricsV2.lacros",

  # b/359336803: These tests are failing on brya (specifically kano) and
  # blocking LKGM.
  "shimlessrma.SelectComponentsNoneNextCancel.critical@brya",
  "shimlessrma.WelcomeNextCancel.critical@brya",
  "shimlessrma.WelcomeCancel.critical@brya",

  # b/362288747, test is failing on brya.
  "a11y.LiveCaption.fieldtrial_testing_config_off@brya",

  # b/362457684: test is failing on betty, blocking LKGM.
  "cryptohome.UssMigrationChallengeCredential.rsassa_all@betty",

  # READ COMMENT AT TOP BEFORE ADDING NEW TESTS HERE.
]

# To create filters to be used on specific builders add them like this:
# tast_disabled_tests_from_lacros_example = [ "lacros.Basic" ]
# and add the name (i.e. 'tast_disabled_tests_from_lacros_example') to the
# test config as 'tast_expr_key'
# To disable a specific test in lacros_all_tast_tests, add it the following
# list and cite a bug.
# The test disabled here will not impact it running in chrome on chromeOS
# pipeline.
tast_disabled_tests_from_lacros_all = [
  # https://crbug.com/1361163
  "lacros.AudioPinnedStream.play",
  "lacros.AudioPinnedStream.record",

  # https://crbug.com/1236234
  "lacros.AudioPlay",

  # https://crbug.com/1376638
  "lacros.AudioRecord",

  # https://crbug.com/1446233
  "arc.IntentForward.lacros_vm",

  # https://crbug.com/1470305
  "inputs.VirtualKeyboardTypingOmnibox.a11y_lacros",

  # https:/b/322119286
  "crostini.LaunchBrowser.bookworm_stable_lacros",
  "crostini.LaunchBrowser.bullseye_stable_lacros",
  "crostini.VerifyAppWayland.bookworm_stable_lacros",
  "crostini.VerifyAppWayland.bullseye_stable_lacros",

  # On branch day, Lacros is +3 newer than ash which break the test.
  "lacros.CompareVersionWithAsh",

  # b/269177409: This is flaky on the Chromium builders, but works on the
  # ChromeOS builders.
  "nacl.Pnacl.lacros",

  # THIS IS THE LACROS LIST, SCROLL UP FOR CHROME/CHROMEOS.
]

if (!is_official_build) {
  # b/274341001: By design, ui.ChromeCrashEarly.strict fails on non-official
  # builds.
  tast_disabled_tests_from_lacros_all += [ "ui.ChromeCrashEarly.strict_lacros" ]
}

if (is_cfi) {
  # b/350872890: pending investigation and fixes for is_cfi builders on betty.
  tast_disabled_tests_from_chrome_all += [
    "crostini.BackupRestore.bookworm_stable@betty",
    "crostini.FsCorruption.bookworm_stable@betty",
  ]
}