Trapped-Tests.st 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. Smalltalk current createPackage: 'Trapped-Tests' properties: #{}!
  2. TestCase subclass: #IsolatorTest
  3. instanceVariableNames: 'rootModel'
  4. package: 'Trapped-Tests'!
  5. !IsolatorTest methodsFor: 'running'!
  6. setUp
  7. rootModel := EavModel new
  8. getBlock: [:x | x root];
  9. putBlock: [:x :y | x root: y].
  10. ! !
  11. !IsolatorTest methodsFor: 'tests'!
  12. testNontrivialModelReturnsAppropriateValue
  13. | bb model result |
  14. bb := Isolator on: #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.
  15. model := EavModel new getBlock: [ :x | (x root at: 'foo') at: 2 ].
  16. bb model: model read: [:r|result := r].
  17. self assert: #(1 #(2 3)) equals: result
  18. !
  19. testRootModelReturnsDeeplyIsolatedRoot
  20. | bb result |
  21. bb := Isolator on: #(1 #(2 3)).
  22. bb model: rootModel read: [:r|(r at: 2) at: 1 put: 0].
  23. bb model: rootModel read: [:r|result := r].
  24. self assert: #(1 #(2 3)) equals: result
  25. !
  26. testRootModelReturnsIsolatedRoot
  27. | bb result |
  28. bb := Isolator on: #(1 #(2 4)).
  29. bb model: rootModel read: [:r|r at: 2 put: nil].
  30. bb model: rootModel read: [:r|result := r].
  31. self assert: #(1 #(2 4)) equals: result
  32. !
  33. testRootModelReturnsRoot
  34. | bb result |
  35. bb := Isolator on: #(1 #(2 3)).
  36. bb model: rootModel read: [:r|result := r].
  37. self assert: #(1 #(2 3)) equals: result
  38. ! !