package org.camunda.bpm.extension.mockito.delegate; import org.camunda.bpm.engine.variable.VariableMap; import org.camunda.bpm.engine.variable.Variables; import org.camunda.bpm.engine.variable.value.StringValue; import org.camunda.bpm.extension.mockito.CamundaMockito; import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; import static org.camunda.bpm.engine.variable.Variables.stringValue; public class VariableScopeFakeTest { private final VariableScopeFake variableScope = CamundaMockito.variableScopeFake(); @Test public void create_withVariable() throws Exception { variableScope.withVariable("foo", 1).withVariables(Variables.putValue("bar", 2)); assertThat(variableScope.getVariableNames()).containsOnly("foo", "bar"); } @Test public void variablesTyped() throws Exception { VariableMap variables = Variables.putValueTyped("foo", stringValue("bar")); variableScope.setVariablesLocal(variables); StringValue foo = variableScope.getVariableLocalTyped("foo"); assertThat(foo.getValue()).isEqualTo("bar"); } @Test public void variablesLocal() throws Exception { VariableMap variables = Variables.putValue("foo", "bar"); variableScope.setVariablesLocal(variables); String foo = (String) variableScope.getVariableLocal("foo"); assertThat(foo).isEqualTo("bar"); } }