• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Bareflank / hypervisor / 777
100%

Build:
DEFAULT BRANCH: master
Ran 30 Sep 2016 06:46PM UTC
Jobs 1
Files 148
Run time 9s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
777

push

travis-ci

brendank310
Add vmcs check control tests (#209)

This patch tests every function defined in
vmcs_intel_x64_check_controls.cpp.  The way in which the tests
are implemented is different from other modules.

Each function-under-test's control flow graph is represented
by a vector of lambdas that modify or enable/disable VMCS fields
and MSRs. Each element in the function's cfg represents exactly one
path from its control flow graph.  Each function-under-test corresponds
to exactly one member of vmcs_ut.  This member enumerates over the
cfg of the function-under-test, testing each element (i.e. path) in turn
with RUN_UNITTEST_WITH_MOCKS.

There are several advantages to testing this way.  First, all of the
logic to test a function f is contained in its corresponding
setup_f_paths function, rather than being spread out across several
setup functions that setup vmcs fields for many functions unrelated to
the one under test.  This simplifies verification and debugging of the
test itself because you only have to look at one function to see how it
works.

Also, as the underlying source changes, the test for that source need
only change in one place.  Implementors of tests don't have to worry
about the flip of a bit in one VMCS field breaking other unit tests
for unrelated functions.  The only data dependencies that need to be
tracked down in the event of a change are right there in one setup
function.  This aids comprehensibility and maintainability of the tests.

863 of 863 new or added lines in 6 files covered. (100.0%)

12066 of 12066 relevant lines covered (100.0%)

710.32 hits per line

Jobs
ID Job ID Ran Files Coverage
2 777.2 (TEST="Coveralls") 30 Sep 2016 06:46PM UTC 0
100.0
Travis Job 777.2
Source Files on build 777
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #777
  • 9083ddda on github
  • Prev Build on master (#735)
  • Next Build on master (#778)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc