Просмотр исходного кода

Cleaner smoke test output

default_compile_flags
vector-of-bool 6 лет назад
Родитель
Сommit
b61b65df2a
4 измененных файлов: 27 добавлений и 20 удалений
  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 Просмотреть файл

'-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 Просмотреть файл

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 Просмотреть файл

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 Просмотреть файл

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:

Загрузка…
Отмена
Сохранить