aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorBhavesh Munot <bmunot@fb.com>2022-04-01 09:34:30 -0700
committerFacebook GitHub Bot <facebook-github-bot@users.noreply.github.com>2022-04-01 09:34:30 -0700
commit18990a4a460e90625bf023e8d1c95707dcaebfd5 (patch)
tree421f0738c2e83e2e1197e0d3b89690358da0073b /core
parent6ea9e8f461853c32177f3a3bc0d2ae4ea5718452 (diff)
downloadktfmt-18990a4a460e90625bf023e8d1c95707dcaebfd5.tar.gz
Add tests to confirm that the file is not modified if it already formatted (#304)
Summary: Pull Request resolved: https://github.com/facebookincubator/ktfmt/pull/304 2 tests - 1. File is already formatted, file should not get modified after running the formatter 2. File is not formatted, file should be modified after runnnig the formatter Reviewed By: cgrushko Differential Revision: D35295650 fbshipit-source-id: 288bab862e3ee04749da71ba947444ddfa629439
Diffstat (limited to 'core')
-rw-r--r--core/src/test/java/com/facebook/ktfmt/cli/MainTest.kt35
1 files changed, 35 insertions, 0 deletions
diff --git a/core/src/test/java/com/facebook/ktfmt/cli/MainTest.kt b/core/src/test/java/com/facebook/ktfmt/cli/MainTest.kt
index 03660ae..51972ab 100644
--- a/core/src/test/java/com/facebook/ktfmt/cli/MainTest.kt
+++ b/core/src/test/java/com/facebook/ktfmt/cli/MainTest.kt
@@ -21,6 +21,7 @@ import java.io.ByteArrayOutputStream
import java.io.File
import java.io.PrintStream
import java.lang.IllegalStateException
+import java.nio.file.Files
import java.util.concurrent.ForkJoinPool
import org.junit.After
import org.junit.Assert.fail
@@ -162,6 +163,40 @@ class MainTest {
}
@Test
+ fun `file is not modified if it is already formatted`() {
+ val code = """fun f() = println("hello, world")""" + "\n"
+ val formattedFile = root.resolve("formatted_file.kt")
+ formattedFile.writeText(code)
+ val formattedFilePath = formattedFile.toPath()
+
+ val lastModifiedTimeBeforeRunningFormatter =
+ Files.getLastModifiedTime(formattedFilePath).toMillis()
+ Main(emptyInput, PrintStream(out), PrintStream(err), arrayOf(formattedFile.toString())).run()
+ val lastModifiedTimeAfterRunningFormatter =
+ Files.getLastModifiedTime(formattedFilePath).toMillis()
+
+ assertThat(lastModifiedTimeBeforeRunningFormatter)
+ .isEqualTo(lastModifiedTimeAfterRunningFormatter)
+ }
+
+ @Test
+ fun `file is modified if it is not formatted`() {
+ val code = """fun f() = println( "hello, world")""" + "\n"
+ val unformattedFile = root.resolve("unformatted_file.kt")
+ unformattedFile.writeText(code)
+ val unformattedFilePath = unformattedFile.toPath()
+
+ val lastModifiedTimeBeforeRunningFormatter =
+ Files.getLastModifiedTime(unformattedFilePath).toMillis()
+ Main(emptyInput, PrintStream(out), PrintStream(err), arrayOf(unformattedFile.toString())).run()
+ val lastModifiedTimeAfterRunningFormatter =
+ Files.getLastModifiedTime(unformattedFilePath).toMillis()
+
+ assertThat(lastModifiedTimeBeforeRunningFormatter)
+ .isLessThan(lastModifiedTimeAfterRunningFormatter)
+ }
+
+ @Test
fun `dropbox-style is passed to formatter (file)`() {
val code =
"""fun f() {