浏览代码

Tests for name errors

default_compile_flags
vector-of-bool 3 年前
父节点
当前提交
a089cecd52
共有 1 个文件被更改,包括 51 次插入4 次删除
  1. +51
    -4
      tests/test_basics.py

+ 51
- 4
tests/test_basics.py 查看文件

@@ -45,14 +45,14 @@ def test_simple_lib(tmp_project: Project) -> None:
"""
tmp_project.write('src/foo.cpp', 'int the_answer() { return 42; }')
tmp_project.package_json = {
'name': 'TestProject',
'name': 'test-project',
'version': '0.0.0',
'namespace': 'test',
}
tmp_project.library_json = {'name': 'TestLibrary'}
tmp_project.library_json = {'name': 'test-library'}
tmp_project.build()
assert (tmp_project.build_root / 'compile_commands.json').is_file()
assert list(tmp_project.build_root.glob('libTestLibrary.*')) != []
assert (tmp_project.build_root / 'compile_commands.json').is_file(), 'compdb was not created'
assert list(tmp_project.build_root.glob('libtest-library.*')) != [], 'No archive was created'


def test_lib_with_just_test(tmp_project: Project) -> None:
@@ -67,6 +67,53 @@ def test_lib_with_failing_test(tmp_project: Project) -> None:
tmp_project.build()


def test_invalid_names(tmp_project: Project) -> None:
tmp_project.package_json = {
'name': 'test',
'version': '1.2.3',
'namespace': 'test',
'depends': ['invalid name@1.2.3']
}
with expect_error_marker('invalid-pkg-dep-name'):
tmp_project.build()
with expect_error_marker('invalid-pkg-dep-name'):
tmp_project.pkg_create()
with expect_error_marker('invalid-pkg-dep-name'):
tmp_project.dds.build_deps(['invalid name@1.2.3'])

tmp_project.package_json = {
**tmp_project.package_json,
'name': 'invalid name',
'depends': [],
}
with expect_error_marker('invalid-pkg-name'):
tmp_project.build()
with expect_error_marker('invalid-pkg-name'):
tmp_project.pkg_create()

tmp_project.package_json = {
**tmp_project.package_json,
'name': 'simple_name',
'namespace': 'invalid namespace',
}
with expect_error_marker('invalid-pkg-namespace-name'):
tmp_project.build()
with expect_error_marker('invalid-pkg-namespace-name'):
tmp_project.pkg_create()

tmp_project.package_json = {
'name': 'test',
'version': '1.2.3',
'namespace': 'test',
'depends': [],
}
tmp_project.library_json = {'name': 'invalid name'}
# Need a source directory for dds to load the lib manifest
tmp_project.write('src/empty.hpp', '')
with expect_error_marker('invalid-lib-name'):
tmp_project.build()


TEST_PACKAGE: PackageJSON = {
'name': 'test-pkg',
'version': '0.2.2',

正在加载...
取消
保存