package io.haskins.java.cloudtrailviewer.filter; import io.haskins.java.cloudtrailviewer.BaseTest; import org.junit.Test; import java.io.IOException; import java.lang.reflect.Field; import org.junit.Before; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; /** * Test class to testing generic Filter functionality * * Created by markhaskins on 06/01/2017. */ public class AllFilterTests extends BaseTest { private Filter testFilter; @Before public void init() throws IOException { testFilter = new AllFilter(); } @Test public void setNeedle() { String testValue = "TestNeedle"; testFilter.setNeedle(testValue); Class<?> testClass = testFilter.getClass(); try { Field f = getField(testClass, "needle"); f.setAccessible(true); f.get(testFilter); String value = (String)getValueOfField(testFilter, f); assertEquals(testValue, value); } catch (NoSuchFieldException | IllegalAccessException e) { e.printStackTrace(); } } @Test public void getNeedle() { String testValue = "TestNeedle"; Class<?> testClass = testFilter.getClass(); try { Field f = getField(testClass, "needle"); f.setAccessible(true); f.set(testFilter, testValue); } catch (NoSuchFieldException | IllegalAccessException e) { e.printStackTrace(); } assertEquals(testValue, testFilter.getNeedle()); } @Test public void isNeedleSet() { String testValue = "TestNeedle"; testFilter.setNeedle(testValue); assertTrue(testFilter.isNeedleSet()); } @Test public void passesFilter() { String testValue = "autoscaling"; testFilter.setNeedle(testValue); assertTrue(testFilter.passesFilter(getCoreTestEvent())); } }