test/MCChangeNotificationTest.st
author Claus Gittinger <cg@exept.de>
Sat, 01 Sep 2018 17:33:15 +0200
changeset 1092 8d0ea96a3d72
parent 820 0af32f3fb90e
child 1118 1cd9e0a3805b
permissions -rw-r--r--
initial checkin class: MCFileTreeFileSystemUtils class: MCFileTreeFileSystemUtils class added:17 methods
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/monticello/test' }"
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
MCTestCase subclass:#MCChangeNotificationTest
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'workingCopy'
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
820
0af32f3fb90e Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
     7
	category:'SCM-Monticello-Tests'
5
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!MCChangeNotificationTest methodsFor:'events'!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
modifiedEventFor: aSelector ofClass: aClass
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
	| method |
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
	method := aClass compiledMethodAt: aSelector.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	^ ModifiedEvent 
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
				methodChangedFrom: method
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
				to: method
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
				selector: aSelector
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
				inClass: aClass.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
! !
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!MCChangeNotificationTest methodsFor:'private'!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
foreignMethod
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
	"see testForeignMethodModified"
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
! !
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
!MCChangeNotificationTest methodsFor:'running'!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
setUp
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	workingCopy _ MCWorkingCopy forPackage: self mockPackage.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
	
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
tearDown
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
	workingCopy unregister
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
! !
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!MCChangeNotificationTest methodsFor:'tests'!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
testCoreMethodModified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
	| event |
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
	workingCopy modified: false.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
	event := self modifiedEventFor: #one ofClass: self mockClassA.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
	MCWorkingCopy methodModified: event.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	self assert: workingCopy modified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
testExtMethodModified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
	| event mref |
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
	workingCopy modified: false.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
	mref := workingCopy packageInfo extensionMethods first.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	event := self modifiedEventFor: mref methodSymbol ofClass: mref actualClass.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
	MCWorkingCopy methodModified: event.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
	self assert: workingCopy modified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
testForeignMethodModified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
	| event |
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
	workingCopy modified: false.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
	event := self modifiedEventFor: #foreignMethod ofClass: self class.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
	MCWorkingCopy methodModified: event.
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
	self deny: workingCopy modified
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
! !
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
!MCChangeNotificationTest class methodsFor:'documentation'!
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
version
820
0af32f3fb90e Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
    70
    ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCChangeNotificationTest.st,v 1.2 2013-05-29 00:02:05 vrany Exp $'
5
4f5ec216d770 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
! !
820
0af32f3fb90e Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 5
diff changeset
    72