Skip to content

Commit 9ac7577

Browse files
committed
Run tests on win32 for mypy
1 parent 603458b commit 9ac7577

File tree

1 file changed

+27
-19
lines changed

1 file changed

+27
-19
lines changed

tests/mypy_test.py

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,17 @@
1717
import sys
1818
import argparse
1919

20+
PLATFORMS = ["win32", "linux"]
21+
2022
parser = argparse.ArgumentParser(description="Test runner for typeshed. "
2123
"Patterns are unanchored regexps on the full path.")
2224
parser.add_argument('-v', '--verbose', action='count', default=0, help="More output")
2325
parser.add_argument('-n', '--dry-run', action='store_true', help="Don't actually run mypy")
2426
parser.add_argument('-x', '--exclude', type=str, nargs='*', help="Exclude pattern")
2527
parser.add_argument('-p', '--python-version', type=str, nargs='*',
2628
help="These versions only (major[.minor])")
29+
parser.add_argument('--platforms', type=str, nargs='*',
30+
help="These platforms only")
2731
parser.add_argument('--warn-unused-ignores', action='store_true',
2832
help="Run mypy with --warn-unused-ignores "
2933
"(hint: only get rid of warnings that are "
@@ -96,6 +100,8 @@ def main():
96100
print("--- no versions selected ---")
97101
sys.exit(1)
98102

103+
platforms = args.platforms or PLATFORMS
104+
99105
code = 0
100106
runs = 0
101107
for major, minor in versions:
@@ -126,25 +132,27 @@ def main():
126132
seen.add(mod)
127133
files.append(fn)
128134
if files:
129-
runs += 1
130-
flags = ['--python-version', '%d.%d' % (major, minor)]
131-
flags.append('--strict-optional')
132-
flags.append('--no-site-packages')
133-
flags.append('--show-traceback')
134-
flags.append('--no-implicit-optional')
135-
flags.append('--disallow-any-generics')
136-
if args.warn_unused_ignores:
137-
flags.append('--warn-unused-ignores')
138-
sys.argv = ['mypy'] + flags + files
139-
if args.verbose:
140-
print("running", ' '.join(sys.argv))
141-
else:
142-
print("running mypy", ' '.join(flags), "# with", len(files), "files")
143-
try:
144-
if not args.dry_run:
145-
mypy_main('', sys.stdout, sys.stderr)
146-
except SystemExit as err:
147-
code = max(code, err.code)
135+
for platform in platforms:
136+
runs += 1
137+
flags = ['--python-version', '%d.%d' % (major, minor)]
138+
flags.append('--strict-optional')
139+
flags.append('--no-site-packages')
140+
flags.append('--show-traceback')
141+
flags.append('--no-implicit-optional')
142+
flags.append('--disallow-any-generics')
143+
if args.warn_unused_ignores:
144+
flags.append('--warn-unused-ignores')
145+
flags += ['--platform', platform]
146+
sys.argv = ['mypy'] + flags + files
147+
if args.verbose:
148+
print("running", ' '.join(sys.argv))
149+
else:
150+
print("running mypy", ' '.join(flags), "# with", len(files), "files")
151+
try:
152+
if not args.dry_run:
153+
mypy_main('', sys.stdout, sys.stderr)
154+
except SystemExit as err:
155+
code = max(code, err.code)
148156
if code:
149157
print("--- exit status", code, "---")
150158
sys.exit(code)

0 commit comments

Comments
 (0)