Lines Matching defs:TU
9 // These tests cover clangd's logic to build a TU, which generally uses the APIs
111 TestTU TU;
112 TU.HeaderCode = R"(
116 TU.Code = R"cpp(
120 auto AST = TU.build();
128 TestTU TU;
129 TU.HeaderCode = R"cpp(
137 TU.Code = R"cpp(
143 auto AST = TU.build();
148 TestTU TU;
149 TU.Code = R"cpp(
157 auto AST = TU.build();
164 TestTU TU;
165 TU.Code = R"cpp(
190 auto AST = TU.build();
207 auto TU = TestTU::withCode(R"cpp(
212 TU.ExtraArgs.push_back("-fdelayed-template-parsing");
213 auto AST = TU.build();
218 TestTU TU;
219 TU.AdditionalFiles["foo.h"] = R"(
222 TU.Code = R"cpp(
230 auto AST = TU.build();
250 TestTU TU;
253 TU.ClangTidyProvider = addTidyChecks("modernize-use-trailing-return-type");
254 TU.Code = "inline int foo() {}";
256 auto AST = TU.build();
328 auto TU = TestTU::withCode(TestCase.code());
329 TU.HeaderCode = R"cpp(
334 TU.AdditionalFiles["foo.inc"] = R"cpp(
339 ParsedAST AST = TU.build();
364 TestTU TU;
365 TU.Filename = "foo.cpp";
366 TU.AdditionalFiles["foo.h"] = "void foo();";
367 TU.AdditionalFiles["sub/baz.h"] = "void baz();";
368 TU.AdditionalFiles["sub/aux.h"] = "void aux();";
369 TU.ExtraArgs = {"-I" + testPath("sub")};
370 TU.Code = ModifiedContents.str();
371 auto ExpectedAST = TU.build();
374 TU.Code = "";
377 auto Inputs = TU.inputs(FS);
385 TU.Code = ModifiedContents.str();
386 Inputs = TU.inputs(FS);
410 TestTU TU;
411 TU.Filename = "foo.cpp";
412 TU.Code = "";
413 auto ExpectedAST = TU.build();
416 TU.Code = R"cpp(#include <foo.h>)cpp";
419 auto Inputs = TU.inputs(FS);
429 TU.Code = "";
430 Inputs = TU.inputs(FS);
482 TestTU TU;
483 TU.ImplicitHeaderGuard = false;
485 TU.Code = ";";
486 EXPECT_FALSE(mainIsGuarded(TU.build()));
488 TU.Code = guard(";");
489 EXPECT_TRUE(mainIsGuarded(TU.build()));
491 TU.Code = once(";");
492 EXPECT_TRUE(mainIsGuarded(TU.build()));
494 TU.Code = R"cpp(
498 EXPECT_FALSE(mainIsGuarded(TU.build())); // FIXME: true
500 TU.Code = R"cpp(
507 EXPECT_FALSE(mainIsGuarded(TU.build()));
528 TestTU TU;
529 TU.ImplicitHeaderGuard = false;
530 TU.Filename = "self.h";
532 TU.Code = R"cpp(
536 auto AST = TU.build();
541 TU.Code = R"cpp(
545 AST = TU.build();
549 TU.Code = R"cpp(
554 AST = TU.build();
558 TU.Code = R"cpp(
563 AST = TU.build();
567 TU.Code = R"cpp(
572 AST = TU.build();
576 TU.Code = R"cpp(
583 AST = TU.build();
588 TU.Code = R"cpp(
595 AST = TU.build();
600 TU.Code = R"cpp(
607 AST = TU.build();
612 TU.Code = R"cpp(
619 AST = TU.build();
624 TU.Code = R"cpp(
631 AST = TU.build();
635 TU.Code = R"cpp(
640 AST = TU.build();
645 TU.Code = R"cpp(
650 AST = TU.build();
676 TestTU TU;
677 TU.ImplicitHeaderGuard = false; // We're testing include guard handling!
678 TU.ExtraArgs.push_back("-xc++-header");
682 TU.Filename = "iface.h";
683 TU.Code = guard(Interface);
684 TU.AdditionalFiles = {{"impl.h", Implementation}};
685 auto AST = TU.build();
690 TU.Code = once(Interface);
691 AST = TU.build();
696 TU.Filename = "impl.h";
697 TU.Code = Implementation;
698 TU.AdditionalFiles = {{"iface.h", guard(Interface)}};
699 AST = TU.build();
707 TU.AdditionalFiles = {{"iface.h", once(Interface)}};
708 AST = TU.build();
716 TestTU TU;
717 TU.AdditionalFiles["Header.h"] = R"(
722 TU.Code = R"cpp(
729 auto AST = TU.build();
772 auto TU = TestTU::withHeaderCode("void foo(__builtin_va_list);");
773 TU.Code = "void bar() { foo(2); }";
774 TU.ExtraArgs.emplace_back("-target");
775 TU.ExtraArgs.emplace_back(kPreambleTarget);
776 const auto Preamble = TU.preamble();
779 TU.ExtraArgs.pop_back();
780 TU.ExtraArgs.emplace_back("wasm32");
784 auto Inputs = TU.inputs(FS);
788 auto AST = ParsedAST::build(testPath(TU.Filename), std::move(Inputs),