Suppose we have a class that we want to mock.
<code>class Apple {
Color color
bool isFresh
}
</code>
<code>class Apple {
Color color
bool isFresh
}
</code>
class Apple {
Color color
bool isFresh
}
We mock it with Mock. We execute the code we need to test. Mocked Apple object gets its Color color
updated. However, the field stays null.
<code>// test class
Apple apple = Mock(Apple.class)
myService.myMethod(apple)
assert apple.color == Color.RED //FAIL because apple.color == null
</code>
<code>// test class
Apple apple = Mock(Apple.class)
myService.myMethod(apple)
assert apple.color == Color.RED //FAIL because apple.color == null
</code>
// test class
Apple apple = Mock(Apple.class)
myService.myMethod(apple)
assert apple.color == Color.RED //FAIL because apple.color == null
<code>// tested code of myMethod(Apple apple)
apple.color = Color.RED
</code>
<code>// tested code of myMethod(Apple apple)
apple.color = Color.RED
</code>
// tested code of myMethod(Apple apple)
apple.color = Color.RED