-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Add tests using lit as a test harness #520
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
Conversation
|
Some high-level comments.
Thanks for taking the time to do this first pass review guys. I'll work through your comments. |
Yeah, I think a lot of my comments were on things that were pre-existing in llvm code. Depending on how we want to maintain this code and how much we're willing to let it drift from "upstream" we may not want to address all of my concerns :) |
|
@BillyONeal I think the last thing I need is python3 on the CI vms. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You seem to have inadvertently moved the LLVM reference back in time.
EDIT: This has been resolved, but since it was the "final" comment in a review, there's no way to mark it as such.
in libcxx. Don't assume that the output directory and the exec directory are the same.
|
Hooray! Great work @cbezault 🎉 |
|
That said somebody wanted to add descriptions to the Readme.md on how to run the tests locally 😇 |
|
I'm planning on tackling that tomorrow. |
|
@miscco Didn't get to it today (sorry), dealing with other things and infrastructure instability of the CI. Will be at the top of my TODOs for tomorrow. |
|
@cbezault Dont worry, that was just a friendly banter. I thought working with @CaseyCarter makes you immune to that ;) |
Description
This PR adds test coverage. Much of the python code in this PR is based off of, or taken verbatim from, code found in
llvm-project/libcxx/test.After configuring and building, running
ctestfrom the build root will run thelibcxxandstdtests.Subsets of the tests can be run using the
llvm-lit.pyscript found under<build_root>/tests/llvm-lit/lit.py.For example,
python3.8 <build_root>/tests/llvm-lit/lit.py <source_root>/tests/std/tests/VSO_0000000_any_calling_conventions, will run all tests found under that directory. In thestdtestsuite there is only a single test under each named directory. In thelibcxxtestsuite there can be many.TODO
expected_results.txtand how that would interact with the legacy test harness.Checklist
Be sure you've read README.md and understand the scope of this repo.
If you're unsure about a box, leave it unchecked. A maintainer will help you.
_Uglyas perhttps://eel.is/c++draft/lex.name#3.1 or there are no product code changes.
verified by an STL maintainer before automated testing is enabled on GitHub,
leave this unchecked for initial submission).
members, adding virtual functions, changing whether a type is an aggregate
or trivially copyable, etc.).
the C++ Working Draft (including any cited standards), other WG21 papers
(excluding reference implementations outside of proposed standard wording),
and LWG issues as reference material. If they were derived from a project
that's already listed in NOTICE.txt, that's fine, but please mention it.
If they were derived from any other project (including Boost and libc++,
which are not yet listed in NOTICE.txt), you must mention it here,
so we can determine whether the license is compatible and what else needs
to be done.