test/MCTestCase.st
author Claus Gittinger <cg@exept.de>
Tue, 08 May 2018 19:58:20 +0200
changeset 1043 aeecdb5610e4
parent 1031 ca47eba386e2
permissions -rw-r--r--
#FEATURE by cg class: MCPostscriptDefinition added: #asChange
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
     1
"{ Encoding: utf8 }"
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
     2
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ Package: 'stx:goodies/monticello/test' }"
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
     5
"{ NameSpace: Smalltalk }"
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
     6
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
TestCase subclass:#MCTestCase
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	instanceVariableNames:''
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	classVariableNames:''
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
	poolDictionaries:''
815
dca22fdcd65e Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 158
diff changeset
    11
	category:'SCM-Monticello-Tests'
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
!MCTestCase class methodsFor:'as yet unclassified'!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
isAbstract
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	^ self = MCTestCase
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
resources
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
	^ Array with: MCSnapshotResource
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
! !
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
!MCTestCase methodsFor:'asserting'!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
assertPackage: actual matches: expected
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	self assert: actual = expected
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
assertSnapshot: actual matches: expected
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	| diff |
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
	diff _ actual patchRelativeToBase: expected.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	self assert: diff isEmpty
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
assertVersion: actual matches: expected
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
	self assertPackage: actual package matches: expected package.	
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
	self assertVersionInfo: actual info matches: expected info.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
	self assertSnapshot: actual snapshot matches: expected snapshot.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
assertVersionInfo: actual matches: expected
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
	self assert: actual name = expected name.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
	self assert: actual message = expected message.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
	self assert: actual ancestors size = expected ancestors size.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	actual ancestors with: expected ancestors do: [:a :e | self assertVersionInfo: a matches: e]
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
	
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
! !
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
!MCTestCase methodsFor:'compiling'!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
change: aSelector toReturn: anObject
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	self 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
		compileClass: self mockClassA 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
		source: aSelector, ' ^ ', anObject printString 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
		category: 'numeric'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
compileClass: aClass source: source category: category
158
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    61
    Smalltalk isSmalltalkX ifTrue:[
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    62
        Class withoutUpdatingChangesDo:[
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    63
            aClass compile: source classified: category
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    64
        ].
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    65
        ^ self.
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    66
    ].
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
    67
    aClass compileInobtrusively: source classified: category
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
restoreMocks
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
	self mockSnapshot updatePackage: self mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
! !
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
!MCTestCase methodsFor:'mocks'!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
commentForClass: name
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
	^ 'This is a comment for ', name
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
commentStampForClass: name
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
	^ 'tester-', name,  ' 1/1/2000 00:00'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
mockCategoryName
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
	^ 'Monticello-Mocks'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
mockClass: className super: superclassName
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
	^ MCClassDefinition
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
		name:  className
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
		superclassName:  superclassName
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
		category: self mockCategoryName
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
		instVarNames: #()
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
		classVarNames: #()
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
		poolDictionaryNames: #()
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
		classInstVarNames: #()
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
		type: #normal
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
		comment: (self commentForClass: className)
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
		commentStamp: (self commentStampForClass: className)
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
mockClassA
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
	^ Smalltalk at: #MCMockClassA
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
mockClassB
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
	^ Smalltalk at: #MCMockClassB
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
mockDependencies
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
	^ Array with: (MCVersionDependency package: self mockEmptyPackage info: (self mockVersionInfo: 'x'))
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
mockEmptyPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
	^ MCPackage named: (MCEmptyPackageInfo new packageName)
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
mockExtensionMethodCategory
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
	^ MCMockPackageInfo new methodCategoryPrefix.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
mockInstanceA
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
	^ self mockClassA new
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
mockMessageString
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
	^ 'A version generated for testing purposes.'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
mockMethod: aSymbol class: className source: sourceString meta: aBoolean
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
	^ MCMethodDefinition
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
		className: className
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
		classIsMeta: aBoolean
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
		selector:  aSymbol
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
		category: 'as yet unclassified'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
		timeStamp: ''
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
		source: sourceString
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
mockOverrideMethodCategory
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
	^ self mockExtensionMethodCategory, '-override'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
	^ MCSnapshotResource mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
mockSnapshot
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
	^ MCSnapshotResource current snapshot
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
mockToken: aSymbol
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
	^ MCMockDefinition token: aSymbol
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
mockVersion
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
	^ MCVersion 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
		package: self mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
		info: self mockVersionInfo
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
		snapshot: self mockSnapshot
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
mockVersionInfo
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
	^ self treeFrom: #(d ((b ((a))) (c)))
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
mockVersionInfo: tag 
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   168
        ^ MCVersionInfo
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   169
                name: self mockVersionName, '-', tag asString
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   170
                id: UUID new
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   171
                message: self mockMessageString, '-', tag asString
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   172
                date: Date today
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   173
                time: Time now
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   174
                author: Author fullName "Utilities authorInitials" 
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   175
                ancestors: #()
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
mockVersionInfoWithAncestor: aVersionInfo 
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   179
        ^ MCVersionInfo
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   180
                name: aVersionInfo name, '-child'
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   181
                id: UUID new
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   182
                message: self mockMessageString
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   183
                date: Date today
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   184
                time: Time now
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   185
                author: Author fullName "Utilities authorInitials" 
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   186
                ancestors: {aVersionInfo}
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
mockVersionName
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
	^ 'MonticelloTest-xxx.1'
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
mockVersionWithAncestor: aMCVersion 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
	^ MCVersion
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
		package: self mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
		info: (self mockVersionInfoWithAncestor: aMCVersion info)
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
		snapshot: self mockSnapshot
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
mockVersionWithDependencies
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
	^ MCVersion 
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
		package: self mockPackage
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
		info: self mockVersionInfo
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
		snapshot: self mockSnapshot
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
		dependencies: self mockDependencies
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
treeFrom: anArray
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
	| name id |
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
	name _ anArray first.
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
	id _ '00000000-0000-0000-0000-0000000000', (name asString size = 1 ifTrue: [name asString, '0'] ifFalse: [name asString]).
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
	^ MCVersionInfo
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
		name: name
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
		id: (UUID fromString: id)
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
		message: ''
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
		date: nil
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
		time: nil
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
		author: ''
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
		ancestors: (anArray size > 1 ifTrue: [(anArray second collect: [:ea | self treeFrom: ea])] ifFalse: [#()])
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
! !
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
!MCTestCase class methodsFor:'documentation'!
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
version
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   225
    ^ '$Header$'
158
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   226
!
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   227
cd52180a6e57 changed: #compileClass:source:category:
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   228
version_CVS
1031
ca47eba386e2 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 815
diff changeset
   229
    ^ '$Header$'
9
8049c221e0e9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
! !
815
dca22fdcd65e Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 158
diff changeset
   231