From eedb2ad320064a699170eb2c793711c36cbd3580 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 14 Oct 2016 15:43:41 +0200 Subject: [PATCH] assertThat(Element) --- .../src/com/intellij/testFramework/PlatformTestUtil.java | 9 +-------- platform/testFramework/testFramework.iml | 2 +- .../testSrc/com/intellij/testFramework/assertJEx.kt | 7 ++++++- .../org/jetbrains/idea/eclipse/EclipseImlTest.java | 7 +++---- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/platform/testFramework/src/com/intellij/testFramework/PlatformTestUtil.java b/platform/testFramework/src/com/intellij/testFramework/PlatformTestUtil.java index 7a55ea8dde42..7cfbe7b8c8c9 100644 --- a/platform/testFramework/src/com/intellij/testFramework/PlatformTestUtil.java +++ b/platform/testFramework/src/com/intellij/testFramework/PlatformTestUtil.java @@ -846,7 +846,7 @@ public class PlatformTestUtil { public static void assertElementsEqual(final Element expected, final Element actual) throws IOException { if (!JDOMUtil.areElementsEqual(expected, actual)) { - Assert.assertEquals(printElement(expected), printElement(actual)); + Assert.assertEquals(JDOMUtil.writeElement(expected), JDOMUtil.writeElement(actual)); } } @@ -859,12 +859,6 @@ public class PlatformTestUtil { } } - public static String printElement(final Element element) throws IOException { - final StringWriter writer = new StringWriter(); - JDOMUtil.writeElement(element, writer, "\n"); - return writer.getBuffer().toString(); - } - public static String getCommunityPath() { final String homePath = PathManager.getHomePath(); if (new File(homePath, "community/.idea").isDirectory()) { @@ -877,7 +871,6 @@ public class PlatformTestUtil { return getCommunityPath().replace(File.separatorChar, '/') + "/platform/platform-tests/testData/"; } - public static Comparator createComparator(final Queryable.PrintInfo printInfo) { return (o1, o2) -> { String displayText1 = o1.toTestString(printInfo); diff --git a/platform/testFramework/testFramework.iml b/platform/testFramework/testFramework.iml index a3d3621de9e7..1cd589c3830e 100644 --- a/platform/testFramework/testFramework.iml +++ b/platform/testFramework/testFramework.iml @@ -25,7 +25,7 @@ - + diff --git a/platform/testFramework/testSrc/com/intellij/testFramework/assertJEx.kt b/platform/testFramework/testSrc/com/intellij/testFramework/assertJEx.kt index 5d4ad07e94b6..6903d23efaa4 100644 --- a/platform/testFramework/testSrc/com/intellij/testFramework/assertJEx.kt +++ b/platform/testFramework/testSrc/com/intellij/testFramework/assertJEx.kt @@ -24,6 +24,7 @@ import org.assertj.core.api.AbstractAssert import org.assertj.core.api.PathAssert import org.assertj.core.internal.Objects import org.jdom.Element +import java.io.File import java.nio.file.Files import java.nio.file.LinkOption import java.nio.file.Path @@ -39,10 +40,14 @@ class JdomAssert(actual: Element?) : AbstractAssert(actual return this } + fun isEqualTo(file: File): JdomAssert { + return isEqualTo(file.readText()) + } + fun isEqualTo(expected: String): JdomAssert { isNotNull - Objects.instance().assertEqual(info, JDOMUtil.writeElement(actual!!), expected.trimIndent()) + Objects.instance().assertEqual(info, JDOMUtil.writeElement(actual!!), expected.trimIndent().removePrefix("""""").trimStart()) return this } } diff --git a/plugins/eclipse/testSources/org/jetbrains/idea/eclipse/EclipseImlTest.java b/plugins/eclipse/testSources/org/jetbrains/idea/eclipse/EclipseImlTest.java index 8a2f6ed77023..9c880689ec62 100644 --- a/plugins/eclipse/testSources/org/jetbrains/idea/eclipse/EclipseImlTest.java +++ b/plugins/eclipse/testSources/org/jetbrains/idea/eclipse/EclipseImlTest.java @@ -40,13 +40,14 @@ import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.testFramework.IdeaTestCase; -import com.intellij.testFramework.PlatformTestUtil; import org.jdom.Element; import org.jetbrains.annotations.NonNls; import org.jetbrains.idea.eclipse.conversion.EclipseClasspathReader; import java.io.File; +import static com.intellij.testFramework.Assertions.assertThat; + public class EclipseImlTest extends IdeaTestCase { @NonNls private static final String JUNIT = "JUNIT"; @@ -100,11 +101,9 @@ public class EclipseImlTest extends IdeaTestCase { PathMacroManager.getInstance(project).collapsePaths(actualImlElement); PathMacros.getInstance().removeMacro(JUNIT); - Element expectedIml = JDOMUtil.load(new File(project.getBaseDir().getPath() + "/expected", "expected.iml")); - PlatformTestUtil.assertElementsEqual(expectedIml, actualImlElement); + assertThat(actualImlElement).isEqualTo(FileUtil.loadFile(new File(project.getBaseDir().getPath() + "/expected", "expected.iml"))); } - public void testWorkspaceOnly() throws Exception { doTest(); }