@@ -170,23 +170,27 @@ func TestParseFile_IncludeOnlyRequested(t *testing.T) {
170170 }
171171}
172172
173- func TestParseFile_IncludeMissing_ReturnsError (t * testing.T ) {
174- fs := token .NewFileSet ()
175- file , err := parser .ParseFile (fs , "internal/tests/custom_package_name/greeter/greeter.go" , nil , 0 )
176- if err != nil {
173+ // When requested interface is missing, parser should ignore it (no error, no interfaces).
174+ func TestParseFile_IncludeMissing_Ignored (t * testing.T ) {
175+ fs := token .NewFileSet ()
176+ file , err := parser .ParseFile (fs , "internal/tests/custom_package_name/greeter/greeter.go" , nil , 0 )
177+ if err != nil {
178+ t .Fatalf ("Unexpected error: %v" , err )
179+ }
180+
181+ p := fileParser {
182+ fileSet : fs ,
183+ imports : make (map [string ]importedPackage ),
184+ importedInterfaces : newInterfaceCache (),
185+ includeNamesSet : map [string ]struct {}{"DoesNotExist" : {}},
186+ }
187+
188+ pkg , err := p .parseFile ("" , file )
189+ if err != nil {
177190 t .Fatalf ("Unexpected error: %v" , err )
178191 }
179-
180- p := fileParser {
181- fileSet : fs ,
182- imports : make (map [string ]importedPackage ),
183- importedInterfaces : newInterfaceCache (),
184- includeNamesSet : map [string ]struct {}{"DoesNotExist" : {}},
185- }
186-
187- _ , err = p .parseFile ("" , file )
188- if err == nil || ! strings .Contains (err .Error (), "requested interfaces not found" ) {
189- t .Fatalf ("Expected missing interface error, got %v" , err )
192+ if len (pkg .Interfaces ) != 0 {
193+ t .Fatalf ("Expected no interfaces, got %v" , pkg .Interfaces )
190194 }
191195}
192196
0 commit comments