1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42

ash / webui / scanning / resources / PRESUBMIT.py [blame]

# Copyright 2022 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Presubmit script for Scanning.

See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
for more details about the presubmit API built into depot_tools.
"""

import sys

# Use existing SemanticCssChecker to advise use of cros approved colors
# and semantic variables which support dark-mode display.
# See: ui/chromeos/styles/semantic_css_checker.py
def _CheckSemanticCssColors(input_api, output_api):
  original_sys_path = sys.path
  join = input_api.os_path.join
  src_root = input_api.change.RepositoryRoot()
  try:
    # Change the system path to SemanticCssChecker's directory to be
    # able to import it.
    sys.path.append(join(src_root, 'ui', 'chromeos', 'styles'))
    from semantic_css_checker import SemanticCssChecker
  finally:
    sys.path = original_sys_path

  return SemanticCssChecker.RunChecks(input_api, output_api)


def _CommonChecks(input_api, output_api):
    """Checks common to both upload and commit."""
    results = []
    results.extend(_CheckSemanticCssColors(input_api, output_api))
    return results


def CheckChangeOnUpload(input_api, output_api):
    return _CommonChecks(input_api, output_api)


def CheckChangeOnCommit(input_api, output_api):
    return _CommonChecks(input_api, output_api)