initial commit: some diff algorithm

This commit is contained in:
sergeych committed 2023-03-21 03:34:46 +01:00
commit 3f6a16224e
38 files changed
+3735

No files matched your search

+49
View File
@@ -0,0 +1,49 @@
import net.sergeych.merge3.merge3
import net.sergeych.mp_logger.Log
import kotlin.test.Test
import kotlin.test.assertEquals
val List<Char>.str: String get() = joinToString("")
class BasicTest {
@Test
fun testMergeNoConflicts() {
val src = "Hello world".toList()
val a = "Hello cruel world!".toList()
val b = "Bye world!!".toList()
val m = merge3(src, b, a)
println(m.merged.str)
// println(m.conflicts)
println(m.changedAreas)
assertEquals("Bye cruel world!!!", m.merged.str)
// assertTrue(m.noConflicts)
}
@Test
fun testMergeNoConflicts2() {
val src = "Hello world".toList()
val a = "Hello friend".toList()
val b = "Bye world".toList()
val m = merge3(src, b, a)
println(m.merged.str)
// println(m.conflicts)
println(m.changedAreas)
assertEquals("Bye friend", m.merged.str)
// assertTrue(m.noConflicts)
}
@Test
fun testMergeWithConflicts() {
Log.connectConsole()
val src = "Hello world".toList()
val a = "Hello 123".toList()
val b = "Hello 456".toList()
val m = merge3(src, b, a, false)
println(m.merged.str)
// println(m.conflicts)
println(m.changedAreas)
assertEquals("Hello 123456", m.merged.str)
}
}