test/MCFileInTest.st
author Claus Gittinger <cg@exept.de>
Mon, 14 May 2018 02:21:18 +0200
changeset 1048 582b3a028cbc
parent 800 834ebea8b9c9
child 1121 c5661215109c
permissions -rw-r--r--
#FEATURE by cg class: MCMethodDefinition changed: #postloadOver:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/monticello/test' }"
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
MCTestCase subclass:#MCFileInTest
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'stream expected diff'
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
     7
	category:'SCM-Monticello-Tests'
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!MCFileInTest methodsFor:'asserting'!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
assertNoChange
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
	| actual |
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
	actual _ MCSnapshotResource takeSnapshot.
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	diff _ actual patchRelativeToBase: expected.
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	self assert: diff isEmpty
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
! !
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
!MCFileInTest methodsFor:'running'!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
setUp
153
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    23
        expected _ self mockSnapshot.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    24
        Smalltalk isSmalltalkX ifTrue:[
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    25
            stream _ (ReadWriteStream on: String new) binary.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    26
        ] ifFalse:[
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    27
            stream _ RWBinaryOrTextStream on: String new.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    28
        ].
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
tearDown
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	(diff isNil or: [diff isEmpty not])
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
		 ifTrue: [expected updatePackage: self mockPackage]
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
! !
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
!MCFileInTest methodsFor:'testing'!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
alterInitialState
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
	self mockClassA touchCVar
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
assertFileOutFrom: writerClass canBeFiledInWith: aBlock
153
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    43
        (writerClass on: stream) writeSnapshot: self mockSnapshot.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    44
        self alterInitialState.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    45
        self assertSuccessfulLoadWith: aBlock.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    46
        self mockPackage unload.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    47
        self assertSuccessfulLoadWith: aBlock.
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    48
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    49
    "Modified: / 29-05-2013 / 00:55:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
assertInitializersCalled
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
	| cvar |
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	cvar _ self mockClassA cVar.
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
	self assert: cvar = #initialized
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
assertSuccessfulLoadWith: aBlock
153
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    59
        stream reset.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    60
        aBlock value.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    61
        self assertNoChange.
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    62
        self assertInitializersCalled.
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    63
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    64
    "Modified: / 29-05-2013 / 00:55:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
testStWriter
153
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    68
        self
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    69
                assertFileOutFrom: MCStWriter
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    70
                canBeFiledInWith: [stream fileIn].
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    71
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    72
    "Modified: / 29-05-2013 / 00:55:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
! !
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
!MCFileInTest class methodsFor:'documentation'!
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
version
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    78
    ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCFileInTest.st,v 1.3 2013-05-28 23:59:40 vrany Exp $'
153
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    79
!
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    80
1bab1f6eed93 changed:
Claus Gittinger <cg@exept.de>
parents: 19
diff changeset
    81
version_CVS
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    82
    ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCFileInTest.st,v 1.3 2013-05-28 23:59:40 vrany Exp $'
19
17ff4ce04f1f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
! !
800
834ebea8b9c9 Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 153
diff changeset
    84