tests/MessageTracerTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 28 Aug 2017 16:16:00 +0100
branchjv
changeset 4259 4f1299274d32
permissions -rw-r--r--
Added (some) tests for `MessageTracer`
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4259
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:libbasic3/tests' }"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
TestCase subclass:#MessageTracerTests
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'methods'
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'System-Debugging-Support-Tests'
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
!MessageTracerTests methodsFor:'change & update'!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
update: aspect with: param from: sender
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
    aspect == #methodTrap ifTrue:[
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
        methods add: (param changeClass >> param changeSelector)
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
    ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
    "Created: / 28-08-2017 / 17:45:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
! !
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!MessageTracerTests methodsFor:'private'!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
add: x to: y
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
    ^ x + y
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
    "Created: / 28-08-2017 / 15:59:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
! !
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
!MessageTracerTests methodsFor:'running'!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
setUp
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
    Smalltalk addDependent: self.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
    methods := Set new.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
    "Created: / 28-08-2017 / 17:41:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
tearDown
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
    Smalltalk removeDependent: self.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    methods do:[:method | MessageTracer unwrapMethod: method ]
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
    "Created: / 28-08-2017 / 16:01:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
    "Modified: / 28-08-2017 / 17:42:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
! !
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
!MessageTracerTests methodsFor:'tests - mocking'!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
test_mock_01a
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    MessageTracer mock: #add:to: in: self class do: [ 0 ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    self assert: (self add: 1 to: 1) == 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    "Created: / 28-08-2017 / 16:02:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
test_mock_01b
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
    MessageTracer mock: #add:to: in: self class do: [ :r :x :y | r ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
    self assert: (self add: 1 to: 1) == self.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
    "Created: / 28-08-2017 / 16:04:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
test_mock_01c
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    MessageTracer mock: #add:to: in: self class do: [ :r :x :y | x - y ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    self assert: (self add: 1 to: 2) == -1.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    "Created: / 28-08-2017 / 16:04:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
test_mock_01d
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
    MessageTracer mock: #add:to: in: self class do: [ :r :x :y :m | (m valueWithReceiver: r arguments: { x . y }) + 10 ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
    self assert: (self add: 1 to: 3) == 14.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    "Created: / 28-08-2017 / 16:05:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
test_mock_02a
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
    | blocker value |
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
    MessageTracer mock: #add:to: in: self class do:[ 0 ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
    blocker := Semaphore new: 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
    [ 
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
        value := self add: 10 to: -5.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
        blocker signal.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
    ] fork.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    blocker wait.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
    self assert: value == 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
    "Created: / 28-08-2017 / 16:08:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
test_mock_02b
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    | blocker1 blocker2 value |
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
    self assert: (self add: 1 to: 1) == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
    MessageTracer mock: #add:to: in: self class do:[ 0 ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
    blocker1 := Semaphore new: 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    [ 
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
        blocker2 := Semaphore new: 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
        [
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
            value := self add: 10 to: -5.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
            blocker2 signal.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
        ] fork.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
        blocker2 wait.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
        blocker1 signal.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    ] fork.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
    blocker1 wait.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    self assert: value == 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    "Created: / 28-08-2017 / 16:10:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
test_mock_03a
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    | blocker1 blocker2 threads |
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
    threads := Set new.    
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
    MessageTracer mock: #newProcess in: Block do:[:r :m |
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
        | p |
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
        p := m valueWithReceiver: r arguments: #().
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
        threads add: p.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
        p
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
    ].
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
    ObjectMemory flushCaches.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
    blocker1 := Semaphore new: 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
    [ 
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
        blocker2 := Semaphore new: 0.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
        [
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
            blocker2 signal.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
        ] fork.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
        blocker2 wait.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
        blocker1 signal.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    ] fork.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    blocker1 wait.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
    self assert: threads size == 2.
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
    "Created: / 28-08-2017 / 16:24:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
! !
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
!MessageTracerTests class methodsFor:'documentation'!
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
version_HG
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
    ^ '$Changeset: <not expanded> $'
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
! !
4f1299274d32 Added (some) tests for `MessageTracer`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160