Files
carbon-lang/toolchain/parser/parse_tree_file_test.cpp
T
Jon Ross-Perkins f088a71cec Add file_test support for specifying arguments and only checking a subset of output. (#3018)
This is sufficient to convert remaining toolchain tests to file_test. %s
and %t are currently used. While #2978 might use %T with lit, I think
that's resolving a lit-specific issue that's not necessary when
TEST_TMPDIR is readily available for any necessary operations (i.e.,
setting the working directory). With ARGS, I think it's feasible to
switch to file_test without %T.

Also adds documentation to file_test_base.h, which was starting to feel
like a significant gap.

This is not yet handled by autoupdate, but I'm eyeing that next.
2023-07-25 22:47:56 +00:00

33 lines
905 B
C++

// Part of the Carbon Language project, under the Apache License v2.0 with LLVM
// Exceptions. See /LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#include <filesystem>
#include <string>
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "toolchain/driver/driver_file_test_base.h"
namespace Carbon::Testing {
namespace {
class ParseTreeFileTest : public DriverFileTestBase {
public:
using DriverFileTestBase::DriverFileTestBase;
auto GetDefaultArgs() -> llvm::SmallVector<std::string> override {
return {"dump", "parse-tree", "%s"};
}
};
} // namespace
auto RegisterFileTests(const llvm::SmallVector<std::filesystem::path>& paths)
-> void {
ParseTreeFileTest::RegisterTests<ParseTreeFileTest>("ParseTreeFileTest",
paths);
}
} // namespace Carbon::Testing