mirror of
https://github.com/Smaug123/WoofWare.Expect
synced 2025-10-05 04:28:40 +00:00
111 lines
2.9 KiB
Forth
111 lines
2.9 KiB
Forth
namespace WoofWare.Expect.Test
|
|
|
|
open WoofWare.Expect
|
|
open NUnit.Framework
|
|
|
|
[<TestFixture>]
|
|
module TestDiff =
|
|
|
|
[<Test>]
|
|
let ``Basic diff`` () =
|
|
let textA =
|
|
[|
|
|
"The quick brown fox"
|
|
"jumps over"
|
|
"the lazy dog"
|
|
"Some unique line here"
|
|
"The end"
|
|
|]
|
|
|
|
let textB =
|
|
[|
|
|
"The quick brown fox"
|
|
"Some unique line here"
|
|
"jumps over"
|
|
"the lazy dog"
|
|
"Another line"
|
|
"The end"
|
|
|]
|
|
|
|
let diff = Diff.patienceLines textA textB
|
|
|
|
expect {
|
|
snapshot
|
|
@" 0 0 The quick brown fox
|
|
+ 1 Some unique line here
|
|
1 2 jumps over
|
|
2 3 the lazy dog
|
|
- 3 Some unique line here
|
|
+ 4 Another line
|
|
4 5 The end"
|
|
|
|
withFormat Diff.formatWithLineNumbers
|
|
return diff
|
|
}
|
|
|
|
expect {
|
|
snapshot
|
|
@" The quick brown fox
|
|
+ Some unique line here
|
|
jumps over
|
|
the lazy dog
|
|
- Some unique line here
|
|
+ Another line
|
|
The end"
|
|
|
|
withFormat Diff.format
|
|
return diff
|
|
}
|
|
|
|
[<Test>]
|
|
let ``An example from Incremental`` () =
|
|
let textA =
|
|
"""digraph G {
|
|
rankdir = TB
|
|
bgcolor = transparent
|
|
n4 [shape=Mrecord label="{{n4|BindMain|height=2}}" "fontname"="Sans Serif"]
|
|
n3 [shape=Mrecord label="{{n3|BindLhsChange|height=1}}" "fontname"="Sans Serif"]
|
|
n1 [shape=Mrecord label="{{n1|Const|height=0}}" "fontname"="Sans Serif"]
|
|
n2 [shape=Mrecord label="{{n2|Const|height=0}}" "fontname"="Sans Serif"]
|
|
n3 -> n4
|
|
n2 -> n4
|
|
n1 -> n3
|
|
}"""
|
|
|
|
let textB =
|
|
"""digraph G {
|
|
rankdir = TB
|
|
bgcolor = transparent
|
|
n4 [shape=box label="{{n4|BindMain|height=2}}" ]
|
|
n3 [shape=box label="{{n3|BindLhsChange|height=1}}" ]
|
|
n1 [shape=box label="{{n1|Const|height=0}}" ]
|
|
n2 [shape=box label="{{n2|Const|height=0}}" ]
|
|
n3 -> n4
|
|
n2 -> n4
|
|
n1 -> n3
|
|
}"""
|
|
|
|
let diff = Diff.patience textA textB
|
|
|
|
expect {
|
|
snapshot
|
|
@" digraph G {
|
|
rankdir = TB
|
|
bgcolor = transparent
|
|
- n4 [shape=Mrecord label=""{{n4|BindMain|height=2}}"" ""fontname""=""Sans Serif""]
|
|
- n3 [shape=Mrecord label=""{{n3|BindLhsChange|height=1}}"" ""fontname""=""Sans Serif""]
|
|
- n1 [shape=Mrecord label=""{{n1|Const|height=0}}"" ""fontname""=""Sans Serif""]
|
|
- n2 [shape=Mrecord label=""{{n2|Const|height=0}}"" ""fontname""=""Sans Serif""]
|
|
+ n4 [shape=box label=""{{n4|BindMain|height=2}}"" ]
|
|
+ n3 [shape=box label=""{{n3|BindLhsChange|height=1}}"" ]
|
|
+ n1 [shape=box label=""{{n1|Const|height=0}}"" ]
|
|
+ n2 [shape=box label=""{{n2|Const|height=0}}"" ]
|
|
n3 -> n4
|
|
n2 -> n4
|
|
n1 -> n3
|
|
}"
|
|
|
|
withFormat Diff.format
|
|
return diff
|
|
}
|