From 276c5a74fe2269d7f6b1c180e77991b111f64798 Mon Sep 17 00:00:00 2001 From: Simon Gamma Date: Thu, 6 Sep 2018 16:31:04 +0200 Subject: [PATCH] adding more integration tests for typescript extension --- .../spotless/TypescriptExtensionTest.java | 44 ++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/TypescriptExtensionTest.java b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/TypescriptExtensionTest.java index dcd280a6a0..a8768a64ee 100644 --- a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/TypescriptExtensionTest.java +++ b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/TypescriptExtensionTest.java @@ -15,6 +15,7 @@ */ package com.diffplug.gradle.spotless; +import java.io.File; import java.io.IOException; import org.junit.Test; @@ -23,7 +24,7 @@ @Category(NpmTest.class) public class TypescriptExtensionTest extends GradleIntegrationTest { @Test - public void integration() throws IOException { + public void useTsfmtInlineConfig() throws IOException { setFile("build.gradle").toLines( "buildscript { repositories { mavenCentral() } }", "plugins {", @@ -42,4 +43,45 @@ public void integration() throws IOException { gradleRunner().withArguments("spotlessApply").build(); assertFile("test.ts").sameAsResource("npm/tsfmt/tsfmt/tsfmt.clean"); } + + @Test + public void useTsfmtFileConfig() throws IOException { + File formattingFile = setFile("tsfmt.json").toLines( + "{", + " \"indentSize\": 1,", + " \"convertTabsToSpaces\": true", + "}"); + setFile("build.gradle").toLines( + "buildscript { repositories { mavenCentral() } }", + "plugins {", + " id 'com.diffplug.gradle.spotless'", + "}", + "spotless {", + " typescript {", + " target 'test.ts'", + " tsfmt().configFile('tsfmt', '" + formattingFile.getAbsolutePath() + "')", + " }", + "}"); + setFile("test.ts").toResource("npm/tsfmt/tsfmt/tsfmt.dirty"); + gradleRunner().withArguments("--stacktrace", "spotlessApply").build(); + assertFile("test.ts").sameAsResource("npm/tsfmt/tsfmt/tsfmt.clean"); + } + + @Test + public void usePrettier() throws IOException { + setFile("build.gradle").toLines( + "buildscript { repositories { mavenCentral() } }", + "plugins {", + " id 'com.diffplug.gradle.spotless'", + "}", + "spotless {", + " typescript {", + " target 'test.ts'", + " prettier()", + " }", + "}"); + setFile("test.ts").toResource("npm/prettier/filetypes/typescript/typescript.dirty"); + gradleRunner().withArguments("--stacktrace", "spotlessApply").build(); + assertFile("test.ts").sameAsResource("npm/prettier/filetypes/typescript/typescript.clean"); + } }