Skip to content

Commit bdc3ba7

Browse files
Closure Teamcopybara-github
authored andcommitted
Generate one conformance report for each chunk.
PiperOrigin-RevId: 569301219
1 parent 2e2a998 commit bdc3ba7

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

src/com/google/javascript/jscomp/AbstractCommandLineRunner.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,9 @@ public abstract class AbstractCommandLineRunner<A extends Compiler, B extends Co
200200
@GwtIncompatible("Unnecessary")
201201
private @Nullable ImmutableMap<String, String> parsedModuleOutputFiles = null;
202202

203+
@GwtIncompatible("Unnecessary")
204+
private @Nullable ImmutableMap<String, String> parsedModuleConformanceFiles = null;
205+
203206
@GwtIncompatible("Unnecessary")
204207
private final Gson gson;
205208

@@ -1044,6 +1047,16 @@ String getChunkOutputFileName(JSChunk m) {
10441047
return config.moduleOutputPathPrefix + m.getName() + ".js";
10451048
}
10461049

1050+
/** Returns the conformance file name for a chunk. */
1051+
@GwtIncompatible("Unnecessary")
1052+
@VisibleForTesting
1053+
String getChunkConformanceFileName(JSChunk m) {
1054+
if (parsedModuleConformanceFiles == null) {
1055+
parsedModuleConformanceFiles = parseModuleOutputFiles(config.moduleConformanceFiles);
1056+
}
1057+
return parsedModuleConformanceFiles.get(m.getName());
1058+
}
1059+
10471060
@VisibleForTesting
10481061
@GwtIncompatible("Unnecessary")
10491062
void writeModuleOutput(String fileName, Appendable out, LicenseTracker lt, JSChunk m)
@@ -2890,6 +2903,19 @@ public CommandLineConfig setModuleOutputFiles(List<String> moduleOutputFiles) {
28902903
return this;
28912904
}
28922905

2906+
private final List<String> moduleConformanceFiles = new ArrayList<>();
2907+
2908+
/**
2909+
* The conformance report file name for a JavaScript chunk (optional). See the flag description
2910+
* for formatting requirements.
2911+
*/
2912+
@CanIgnoreReturnValue
2913+
public CommandLineConfig setModuleConformanceFiles(List<String> moduleConformanceFiles) {
2914+
this.moduleConformanceFiles.clear();
2915+
this.moduleConformanceFiles.addAll(moduleConformanceFiles);
2916+
return this;
2917+
}
2918+
28932919
private String createSourceMap = "";
28942920

28952921
/**

0 commit comments

Comments
 (0)