@@ -226,9 +226,10 @@ TEST(IncludeCleaner, GenerateMissingHeaderDiags) {
226226#include "dir/c.h"
227227$insert_d[[]]$insert_foo[[]]#include "fuzz.h"
228228#include "header.h"
229- $insert_foobar[[]]$insert_quoted[[]]#include "quoted_wrapper.h"
229+ $insert_foobar[[]]$insert_quoted[[]]$insert_quoted2[[]] #include "quoted_wrapper.h"
230230$insert_angled[[]]#include <e.h>
231- $insert_f[[]]$insert_vector[[]]
231+ $insert_f[[]]#include <quoted2_wrapper.h>
232+ $insert_vector[[]]
232233
233234#define DEF(X) const Foo *X;
234235#define BAZ(X) const X x
@@ -241,6 +242,7 @@ TEST(IncludeCleaner, GenerateMissingHeaderDiags) {
241242 $b[[b]]();
242243 $angled[[angled]]();
243244 $quoted[[quoted]]();
245+ $quoted2[[quoted2]]();
244246
245247 ns::$bar[[Bar]] bar;
246248 bar.d();
@@ -280,6 +282,8 @@ TEST(IncludeCleaner, GenerateMissingHeaderDiags) {
280282
281283 TU.AdditionalFiles [" system/e.h" ] = guard (" #include <f.h>" );
282284 TU.AdditionalFiles [" system/f.h" ] = guard (" void f();" );
285+ TU.AdditionalFiles [" system/quoted2_wrapper.h" ] = guard (" #include <system/quoted2.h>" );
286+ TU.AdditionalFiles [" system/quoted2.h" ] = guard (" void quoted2();" );
283287 TU.ExtraArgs .push_back (" -isystem" + testPath (" system" ));
284288
285289 TU.AdditionalFiles [" fuzz.h" ] = guard (" #include \" buzz.h\" " );
@@ -315,7 +319,7 @@ TEST(IncludeCleaner, GenerateMissingHeaderDiags) {
315319 return Header.contains (" angled.h" );
316320 }},
317321 /* QuotedHeaders=*/ {[](llvm::StringRef Header) {
318- return Header.contains (" quoted.h" );
322+ return Header.contains (" quoted.h" ) || Header. contains ( " quoted2.h " ) ;
319323 }});
320324 EXPECT_THAT (
321325 Diags,
@@ -336,6 +340,12 @@ TEST(IncludeCleaner, GenerateMissingHeaderDiags) {
336340 withFix ({Fix (MainFile.range (" insert_quoted" ),
337341 " #include \" quoted.h\"\n " , " #include \" quoted.h\" " ),
338342 FixMessage (" add all missing includes" )})),
343+ AllOf (
344+ Diag (MainFile.range (" quoted2" ),
345+ " No header providing \" quoted2\" is directly included" ),
346+ withFix ({Fix (MainFile.range (" insert_quoted2" ),
347+ " #include \" quoted2.h\"\n " , " #include \" quoted2.h\" " ),
348+ FixMessage (" add all missing includes" )})),
339349 AllOf (Diag (MainFile.range (" bar" ),
340350 " No header providing \" ns::Bar\" is directly included" ),
341351 withFix ({Fix (MainFile.range (" insert_d" ),
0 commit comments