aboutsummaryrefslogtreecommitdiff
path: root/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java')
-rw-r--r--javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java b/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java
new file mode 100644
index 000000000..4e93efce6
--- /dev/null
+++ b/javaparser-testing/src/test/java/com/github/javaparser/ast/ReplaceNodeTest.java
@@ -0,0 +1,32 @@
+package com.github.javaparser.ast;
+
+import org.junit.Test;
+
+import static com.github.javaparser.JavaParser.parse;
+import static com.github.javaparser.JavaParser.parsePackageDeclaration;
+import static com.github.javaparser.utils.Utils.EOL;
+import static org.junit.Assert.assertEquals;
+
+public class ReplaceNodeTest {
+ @Test
+ public void testSimplePropertyWithGenericReplace() {
+ CompilationUnit cu = parse("package x; class Y {}");
+ cu.replace(cu.getPackageDeclaration().get(), parsePackageDeclaration("package z;"));
+ assertEquals(String.format("package z;%1$s" +
+ "%1$s" +
+ "class Y {%1$s" +
+ "}%1$s", EOL), cu.toString());
+ }
+
+ @Test
+ public void testListProperty() {
+ CompilationUnit cu = parse("package x; class Y {}");
+ cu.replace(cu.getClassByName("Y").get(), parse("class B{int y;}").getClassByName("B").get());
+ assertEquals(String.format("package x;%1$s" +
+ "%1$s" +
+ "class B {%1$s" +
+ "%1$s" +
+ " int y;%1$s" +
+ "}%1$s", EOL), cu.toString());
+ }
+}