TextDiffTests.st
changeset 10013 09f8a872932e
child 12123 4bde08cebd48
child 13814 859a43bbea19
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TextDiffTests.st	Fri Jul 01 16:12:24 2011 +0200
@@ -0,0 +1,651 @@
+"{ Package: 'stx:libtool' }"
+
+TestCase subclass:#TextDiffTests
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Collections-Sequenceable-Diff'
+!
+
+TextDiffTests comment:'asdfasfsafsafsa
+'
+!
+
+!TextDiffTests class methodsFor:'documentation'!
+
+documentation
+"
+
+
+"
+! !
+
+!TextDiffTests methodsFor:'default'!
+
+testForward
+    |diff change first second|
+
+    first := #( 'aaa' 'lll' ).
+    second := #( 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' ).
+    diff := Diff new.
+    diff a:first b:second.
+    change := diff diff:false.
+    self deny:(change = nil).
+    self assert:(change deleted = 0).
+    self assert:(change inserted = 2).
+    self assert:(change line0 = 1).
+    self assert:(change line1 = 1).
+    change := change nextLink.
+    self deny:(change = nil).
+    self assert:(change deleted = 0).
+    self assert:(change inserted = 7).
+    self assert:(change line0 = 2).
+    self assert:(change line1 = 4).
+    self assert:(change nextLink = nil).
+
+    "Modified: / 12-02-2010 / 14:23:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+testForward1
+    "comment stating purpose of this message"
+    
+    |d a b result|
+
+    a := ''.
+    b := ''.
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ForwardScript new).
+    self assert:(result = nil).
+
+    "Modified: / 12-02-2010 / 13:57:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+testForward10
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' 'ccccc' 'ccccc' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 2).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 8).
+    self assert:(result line1 = 16).
+    self assert:(result nextLink = nil).
+!
+
+testForward2
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := ''.
+    b := #( 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 11).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testForward3
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'lll' ).
+    b := ''.
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 2).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testForward4
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 1).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 6).
+    self assert:(result line0 = 5).
+    self assert:(result line1 = 10).
+    self assert:(result nextLink = nil).
+!
+
+testForward5
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 9).
+    self assert:(result nextLink = nil).
+!
+
+testForward6
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 3).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 3).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    self assert:(result nextLink = nil).
+!
+
+testForward7
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 3).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 7).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 10).
+    self assert:(result nextLink = nil).
+!
+
+testForward8
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    self assert:(result nextLink = nil).
+!
+
+testForward9
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    self assert:(result nextLink = nil).
+!
+
+testForward9NoDiscards
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d nodiscards:true.
+    d a:a b:b.
+    result := d diff:false.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    self assert:(result nextLink = nil).
+!
+
+testReverse
+    |diff change first second|
+
+    first := #( '1' '2' '3' '4' '5' '6' '7' '8' '9' '10' '11' '12' '13' ).
+    second := #( '1' '2' '3' '5' '7' '8' '8' '9' '10' '11' '11' '12' '13' ).
+    diff := Diff new.
+    diff a:first b:second.
+    change := diff diff:false.
+    self assert:(change ~= nil).
+
+    "Modified: / 12-02-2010 / 14:23:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+testReverse1
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := ''.
+    b := ''.
+    d := Diff new.
+    d a:a b:b.
+    result := d diff:false.
+    self assert:(result = nil).
+!
+
+testReverse10
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ',' 'ccccc' ',' 'ccccc' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 4).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 8).
+    self assert:(result line1 = 16).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testReverse2
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := ''.
+    b := #( 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 11).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testReverse3
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'lll' ).
+    b := ''.
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 2).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testReverse4
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 6).
+    self assert:(result line0 = 5).
+    self assert:(result line1 = 10).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 1).
+    self assert:(result line1 = 1).
+    self assert:(result nextLink = nil).
+!
+
+testReverse5
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    self assert:(result nextLink = nil).
+!
+
+testReverse6
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 3).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 3).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    self assert:(result nextLink = nil).
+!
+
+testReverse7
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaa' 'jjj' 'kkk' 'lll' 'bbb' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 10).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 7).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 3).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 2).
+    self assert:(result nextLink = nil).
+!
+
+testReverse8
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+!
+
+testReverse9
+    "comment stating purpose of message"
+    
+    |d a b result|
+
+    a := #( 'aaaa' 'aaa' 'bbbb' 'bbb' 'aaa' 'aaa' 'aaa' 'aaa' ).
+    b := #( 'aaa' 'aaaa' 'jjj' 'kkk' 'lll' 'bbb' 'ccc' 'aaa' 'aaa' 'hhh' 'iii' 'mmm' 'nnn' 'ppp' 'aaa' 'aaa' ).
+    d := Diff new.
+    d a:a b:b.
+    result := d diffUsingScript:(Diff::ReverseScript new).
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 5).
+    self assert:(result line0 = 6).
+    self assert:(result line1 = 9).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 0).
+    self assert:(result inserted = 1).
+    self assert:(result line0 = 4).
+    self assert:(result line1 = 6).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 4).
+    self assert:(result line0 = 2).
+    self assert:(result line1 = 1).
+    result := result nextLink.
+    self deny:(result = nil).
+    self assert:(result deleted = 1).
+    self assert:(result inserted = 0).
+    self assert:(result line0 = 0).
+    self assert:(result line1 = 0).
+    self assert:(result nextLink = nil).
+! !
+
+!TextDiffTests class methodsFor:'documentation'!
+
+version_CVS
+    ^ '$Header: /cvs/stx/stx/libtool/TextDiffTests.st,v 1.1 2011-07-01 14:12:24 cg Exp $'
+!
+
+version_SVN
+    ^ '§Id: TextDiffTests.st 7546 2010-02-25 21:31:39Z vranyj1 §'
+! !