File: check_network_annotations.py

package info (click to toggle)
chromium 73.0.3683.75-1~deb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 1,792,156 kB
  • sloc: cpp: 13,473,466; ansic: 1,577,080; python: 898,539; javascript: 655,737; xml: 341,883; asm: 306,070; java: 289,969; perl: 80,911; objc: 67,198; sh: 43,184; cs: 27,853; makefile: 12,092; php: 11,064; yacc: 10,373; tcl: 8,875; ruby: 3,941; lex: 1,800; pascal: 1,473; lisp: 812; awk: 41; jsp: 39; sed: 19; sql: 3
file content (46 lines) | stat: -rwxr-xr-x 1,211 bytes parent folder | download | duplicates (8)
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
43
44
45
46
#!/usr/bin/env python
# Copyright 2017 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

"""//testing/scripts wrapper for the network traffic annotations checks.
This script is used to run check_annotations.py on the trybots to ensure that
all network traffic annotations have correct syntax and semantics, and all
functions requiring annotations have one."""

import json
import os
import sys


import common


def main_run(args):
  command_line = [
      sys.executable,
      os.path.join(common.SRC_DIR, 'tools', 'traffic_annotation', 'scripts',
                   'check_annotations.py'),
      '--build-path',
      os.path.join(args.paths['checkout'], 'out', args.build_config_fs),
  ]
  rc = common.run_command(command_line)

  json.dump({
      'valid': True,
      'failures': ['Please refer to stdout for errors.'] if rc else [],
  }, args.output)

  return rc


def main_compile_targets(args):
  json.dump(['shipped_binaries'], args.output)


if __name__ == '__main__':
  funcs = {
    'run': main_run,
    'compile_targets': main_compile_targets,
  }
  sys.exit(common.run_script(sys.argv[1:], funcs))