package com.hubspot.jinjava.lib.filter; import static org.assertj.core.api.Assertions.assertThat; import org.junit.Before; import org.junit.Test; import com.hubspot.jinjava.Jinjava; import com.hubspot.jinjava.interpret.JinjavaInterpreter; public class IntFilterTest { IntFilter filter; JinjavaInterpreter interpreter; @Before public void setup() { interpreter = new Jinjava().newInterpreter(); filter = new IntFilter(); } @Test public void itReturnsSameWhenVarIsNumber() { Integer var = Integer.valueOf(123); assertThat(filter.filter(var, interpreter)).isSameAs(var); } @Test public void itReturnsDefaultWhenVarIsNull() { assertThat(filter.filter(null, interpreter)).isEqualTo(0); assertThat(filter.filter(null, interpreter, "123")).isEqualTo(123); } @Test public void itIgnoresGivenDefaultIfNaN() { assertThat(filter.filter(null, interpreter, "foo")).isEqualTo(0); } @Test public void itReturnsVarAsInt() { assertThat(filter.filter("123", interpreter)).isEqualTo(123); } @Test public void itReturnsDefaultWhenUnableToParseVar() { assertThat(filter.filter("foo", interpreter)).isEqualTo(0); } }