@Test(expected = RedlineException.class) public void shouldNotAllowStoreIntoMethodOrBlockArgument() { Identifier identifier = mock(Identifier.class); when(identifier.isOnLoadSideOfExpression()).thenReturn(false); analyser.initializeBlockArgumentsRegistration(); analyser.argumentsRegistry().put("arg", 1); analyser.initializeTemporariesRegistration(); analyser.visit(identifier, "arg", 3); }
@Test public void shouldPushArgumentWhenVisitArgumentOnLoadSideOfExpression() { Identifier identifier = mock(Identifier.class); when(identifier.isOnLoadSideOfExpression()).thenReturn(true); analyser.initializeBlockArgumentsRegistration(); analyser.argumentsRegistry().put("arg", 1); analyser.visit(identifier, "arg", 3); verify(writer).pushArgument(1); }