Browse Source

Cleaner smoke test output

default_compile_flags
vector-of-bool 5 years ago
parent
commit
b61b65df2a
4 changed files with 27 additions and 20 deletions
  1. +2
    -0
      build.py
  2. +2
    -1
      manifest.dds
  3. +1
    -1
      src/dds/manifest.cpp
  4. +22
    -18
      test.py

+ 2
- 0
build.py View File

'-Wshadow', '-Wshadow',
'-Wconversion', '-Wconversion',
'-fdiagnostics-color', '-fdiagnostics-color',
'-DFMT_HEADER_ONLY=1',
'-pthread', '-pthread',
'-c', '-c',
str(cpp_file), str(cpp_file),
'/nologo', '/nologo',
'/EHsc', '/EHsc',
'/std:c++latest', '/std:c++latest',
'/DFMT_HEADER_ONLY=1',
f'/I{HERE_DIR / "src"}', f'/I{HERE_DIR / "src"}',
str(cpp_file), str(cpp_file),
'/c', '/c',

+ 2
- 1
manifest.dds View File

Private-Include: external/spdlog/include Private-Include: external/spdlog/include
Private-Include: external/wil/include
Private-Include: external/wil/include
Private-Define: FMT_HEADER_ONLY=1

+ 1
- 1
src/dds/manifest.cpp View File

for (auto& pair : kvs.items()) { for (auto& pair : kvs.items()) {
if (pair.key() == "Private-Include") { if (pair.key() == "Private-Include") {
ret.private_includes.emplace_back(pair.value()); ret.private_includes.emplace_back(pair.value());
} else if (pair.key() == "Private-Defines") {
} else if (pair.key() == "Private-Define") {
ret.private_defines.emplace_back(pair.value()); ret.private_defines.emplace_back(pair.value());
} else { } else {
throw std::runtime_error( throw std::runtime_error(

+ 22
- 18
test.py View File

import argparse import argparse
from pathlib import Path from pathlib import Path
from typing import List, NamedTuple from typing import List, NamedTuple
import shutil
import subprocess import subprocess
import sys import sys






def run_test_dir(dir: Path, opts: TestOptions) -> bool: def run_test_dir(dir: Path, opts: TestOptions) -> bool:
try:
subprocess.check_call(
[
str(opts.exe),
'build',
'--export',
'--warnings',
'--tests',
'--toolchain',
opts.toolchain,
],
cwd=dir,
)
except subprocess.CalledProcessError:
import traceback
traceback.print_exc()
return False
return True
print(f'Running test: {dir.name} ...')
out_dir = dir / '_build'
if out_dir.exists():
shutil.rmtree(out_dir)
res = subprocess.run(
[
str(opts.exe),
'build',
'--export',
'--warnings',
'--tests',
f'--toolchain={opts.toolchain}',
f'--out-dir={out_dir}',
],
cwd=dir,
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
)
if res.returncode != 0:
print(f'Test failed with exit code [{res.returncode}]:\n{res.stdout}')
return res.returncode == 0




def run_tests(opts: TestOptions) -> int: def run_tests(opts: TestOptions) -> int:

Loading…
Cancel
Save