llvm/clang-tools-extra/test/modularize/NoProblemsAssistant.modularize

# RUN: modularize -module-map-path=Output/NoProblemsAssistant.txt -root-module=Root -prefix=%S/Input %s
# RUN: FileCheck --input-file=%T/NoProblemsAssistant.txt %s

SomeTypes.h
SomeDecls.h
SubModule1/Header1.h
SubModule1/Header2.h
SubModule2/Header3.h
SubModule2/Header4.h
SubModule2/Header5-dash.dot.h
SubModule2.h

# CHECK: // Output/NoProblemsAssistant.txt
# CHECK-NEXT: // Generated by: modularize -module-map-path=Output/NoProblemsAssistant.txt -root-module=Root -prefix={{.*}}{{[/\\]}}{{.*}} {{.*}}{{[/\\]}}NoProblemsAssistant.modularize
# CHECK: module Root {
# CHECK-NEXT:   module SomeTypes {
# CHECK-NEXT:     header "SomeTypes.h"
# CHECK-NEXT:     export *
# CHECK-NEXT:   }
# CHECK-NEXT:   module SomeDecls {
# CHECK-NEXT:     header "SomeDecls.h"
# CHECK-NEXT:     export *
# CHECK-NEXT:   }
# CHECK-NEXT:   module SubModule1 {
# CHECK-NEXT:     module Header1 {
# CHECK-NEXT:       header "SubModule1/Header1.h"
# CHECK-NEXT:       export *
# CHECK-NEXT:     }
# CHECK-NEXT:     module Header2 {
# CHECK-NEXT:       header "SubModule1/Header2.h"
# CHECK-NEXT:       export *
# CHECK-NEXT:     }
# CHECK-NEXT:   }
# CHECK-NEXT:   module SubModule2 {
# CHECK-NEXT:     module Header3 {
# CHECK-NEXT:       header "SubModule2/Header3.h"
# CHECK-NEXT:       export *
# CHECK-NEXT:     }
# CHECK-NEXT:     module Header4 {
# CHECK-NEXT:       header "SubModule2/Header4.h"
# CHECK-NEXT:       export *
# CHECK-NEXT:     }
# CHECK-NEXT:     module Header5_dash_dot {
# CHECK-NEXT:       header "SubModule2/Header5-dash.dot.h"
# CHECK-NEXT:       export *
# CHECK-NEXT:     }
# CHECK-NEXT:     header "SubModule2.h"
# CHECK-NEXT:     export *
# CHECK-NEXT:   }
# CHECK-NEXT: }