openrewrite / rewrite

Automated mass refactoring of source code.
https://docs.openrewrite.org
Apache License 2.0
2.09k stars 312 forks source link

Issue discovered with `src/main/java/org/hl7/fhir/tools/publisher/Publisher.java` #2187

Closed JLLeitschuh closed 2 years ago

JLLeitschuh commented 2 years ago

Problem

Describe the issue you are experiencing.

Expected behavior

Describe what you expected to see.

Example diff

       ttl.executeV3(page.getValueSets(), page.getCodeSystems());
     rim = rim + tmp.toString();
     TextFile.stringToFile(rim, Utilities.path(page.getFolders().dstDir, "rim.ttl"));
-    ttl = new FhirTurtleGenerator(new FileOutputStream(Utilities.path(page.getFolders().dstDir, "fhir.ttl")), page.getDefinitions(), page.getWorkerContext(), page.getValidationErrors());
+    ttl = new FhirTurtleGenerator(new FileOutputStream(/*~~(java.lang.IllegalArgumentException: Expected a template that would generate exactly one statement to replace one statement, but generated 4. Template:
+new File(__P__.<java.lang.String>/*__p0__*/p())
+  org.openrewrite.java.JavaTemplate$2.maybeReplaceStatement(JavaTemplate.java:486)
+  org.openrewrite.java.JavaTemplate$2.visitMethodInvocation(JavaTemplate.java:462)
+  org.openrewrite.java.JavaTemplate$2.visitMethodInvocation(JavaTemplate.java:102)
+  org.openrewrite.java.tree.J$MethodInvocation.acceptJava(J.java:3474)
+  org.openrewrite.java.tree.J.accept(J.java:60)
+  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:206)
+  org.openrewrite.TreeVisitor.visit(TreeVisitor.java:145)
+  org.openrewrite.java.JavaTemplate.withTemplate(JavaTemplate.java:520)
+  ...)~~>*/Utilities.path(page.getFolders().dstDir, "fhir.ttl")), page.getDefinitions(), page.getWorkerContext(), page.getValidationErrors());
     ttl.executeMain();
     W5TurtleGenerator w5 = new W5TurtleGenerator(new FileOutputStream(Utilities.path(page.getFolders().dstDir, "w5.ttl")), page.getDefinitions(), page.getWorkerContext(), page.getValidationErrors());
     w5.executeMain();

Recipes in example diff:

pway99 commented 2 years ago

closing this issue its accounted for in https://github.com/openrewrite/rewrite/issues/2185