Source code for varats.projects.test_projects.basic_tests
"""Small test project to run basic vara tests."""
import typing as tp
import benchbuild as bb
from plumbum import local
from varats.project.project_domain import ProjectDomains
from varats.project.project_util import ProjectBinaryWrapper
from varats.project.varats_project import VProject
from varats.utils.git_util import ShortCommitHash
[docs]
class BasicTests(VProject):
"""
Basic tests:
Different small test files
"""
NAME = 'basic-tests'
DOMAIN = ProjectDomains.TEST
GROUP = 'test_projects'
SOURCE = [
bb.source.Git(
remote="https://github.com/se-passau/vara-perf-tests.git",
local="basic-tests",
limit=1,
refspec="origin/HEAD"
)
]
test_files = [
"if.cpp", "loop.cpp", "switch.cpp", "exitOutsideRegion.cpp",
"overlappingRegions.cpp", "returnInRegion.cpp"
]
@staticmethod
def binaries_for_revision(
revision: ShortCommitHash
) -> tp.List[ProjectBinaryWrapper]:
"""Return a list of binaries generated by the project."""
return []
def run_tests(self) -> None:
pass
def compile(self) -> None:
"""Compile the project."""
source = local.path(self.source_of_primary)
clang = bb.compiler.cxx(self)
with local.cwd(source + "/basic-tests"):
for test_file in self.test_files:
bb.watch(clang)(test_file, "-o", test_file.replace('.cpp', ''))