New contributor, `make test` not doing anything

(Reposted from llvm-dev)

I came to the recent LLVM/Clang hackathon and made a new checker for clang-tidy. I’m working on wrapping up and submitting my patch, and I can’t seem to run the tests.

  • First, I followed the instructions at http://clang.llvm.org/hacking.html#testingNonWindows. I ran make test in my build directory, and also tried running make in the test subdirectory. They both exited in under a second with no output.

  • Then, I tried doing the same thing in the tools/clang/tools/extra subdirectory of my build directory, where clang-tidy lives. Same result.

  • Finally, I found http://clang.llvm.org/extra/clang-tidy/#testing-checks. This explains how to create tests but not how to run them. I made a relatively wonky command line that seems to run my test successfully (along the lines of PATH=$PATH:$BUILD_DIR/bin ./check_clang_tidy.py ../../test/clang-tidy/misc-my-check.cpp misc-my-check /tmp/foo.tmp), but it doesn’t feel right.

What should I be doing instead?

With CMake you go into your “build” directory (where you build the system) and run

“make check-clang-tools”

Also “make clang-tidy” will just rebuild clang-tidy

Wow, that documentation is extremely out of date.

Use the build target 'check-clang' to run the Clang tests, and
'check-clang-tools' to run the tests for clang's tools/extra. These
should be run from the build directory, not from the 'test' directory.

Thanks to both of you! These work.