package org.jtwig.value.context; import org.junit.Test; import static org.junit.Assert.assertSame; import static org.mockito.Mockito.*; public class StaticVariableValueContextTest { public static final String STATIC_KEY = "staticKey"; public static final Object STATIC_VALUE = new Object(); private final ValueContext valueContext = mock(ValueContext.class); private StaticVariableValueContext underTest = new StaticVariableValueContext(valueContext, STATIC_KEY, STATIC_VALUE); @Test public void resolveStatic() throws Exception { Object result = underTest.resolve(STATIC_KEY); assertSame(STATIC_VALUE, result); } @Test public void resolveNonStatic() throws Exception { String key = "key"; Object value = new Object(); when(valueContext.resolve(key)).thenReturn(value); Object result = underTest.resolve(key); assertSame(value, result); } @Test public void with() throws Exception { String key = "key"; Object value = new Object(); underTest.with(key, value); verify(valueContext).with(key, value); } }