Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce CTest-based test harness #80

Merged
merged 84 commits into from
Sep 3, 2021
Merged

Introduce CTest-based test harness #80

merged 84 commits into from
Sep 3, 2021

Conversation

kulp
Copy link
Owner

@kulp kulp commented Jan 2, 2021

Fixes #50.

The approach in this PR is to iteratively peel away pieces of the Makefile-based test harness and replace them with CTest tests while maintaining non-decreasing code coverage.

@codecov
Copy link

codecov bot commented Jan 2, 2021

Codecov Report

Merging #80 (8779b7b) into develop (590b46b) will increase coverage by 0.0%.
The diff coverage is n/a.

❗ Current head 8779b7b differs from pull request most recent head 79334b3. Consider uploading reports for the commit 79334b3 to get more accurate results
Impacted file tree graph

@@           Coverage Diff           @@
##           develop     #80   +/-   ##
=======================================
  Coverage     96.2%   96.2%           
=======================================
  Files           34      34           
  Lines         2667    2667           
  Branches       470     470           
=======================================
+ Hits          2566    2567    +1     
+ Misses          77      76    -1     
  Partials        24      24           
Impacted Files Coverage Δ
src/jit.c 99.1% <0.0%> (-0.9%) ⬇️
src/devices/sdlled.c 89.9% <0.0%> (-0.9%) ⬇️
src/cjit.c 100.0% <0.0%> (+1.4%) ⬆️
src/simif.c 100.0% <0.0%> (+1.9%) ⬆️
hw/vpi/callbacks.c 100.0% <0.0%> (+3.4%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 590b46b...79334b3. Read the comment docs.

As I recently found out the hard way, `empty.to` has been (since commit
52c5c50) even emptier than null.to, and the
difference shows up in test coverage, specifically in tld.o, which requires at
least one record in each object.
Generating these failure cases with `dd` places an undue burden on the build
environment. Since we are moving toward a CMake build environment, we may soon
be able to build without a GNU-like environment.
@kulp kulp marked this pull request as ready for review September 3, 2021 02:23
CMake 3.19 is the minimum, and 3.20 is the latest we have tested.
@kulp kulp merged commit cdb3b41 into develop Sep 3, 2021
@kulp kulp deleted the ctest branch September 3, 2021 02:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create a testbench harness that is not dependent on Make
1 participant