package org.spin.gaitlib.test; import junit.framework.TestCase; import org.spin.gaitlib.cadence.CadenceDetector; import org.spin.gaitlib.cadence.DefaultCadenceDetector; import org.spin.gaitlib.filter.FilterNotSetException; import org.spin.gaitlib.filter.MedianFilter; public class CadenceDetectorTest extends TestCase { private final CadenceDetector cadenceDetector; public CadenceDetectorTest(String name) { super(name); cadenceDetector = new DefaultCadenceDetector(); } @Override protected void setUp() throws Exception { super.setUp(); } @Override protected void tearDown() throws Exception { super.tearDown(); } public void testSetFilterFilterChoice() { assertNull(cadenceDetector.getFilter()); cadenceDetector.setFilter(new MedianFilter()); assertNotNull(cadenceDetector.getFilter()); cadenceDetector.setFilter(null); assertNull(cadenceDetector.getFilter()); } public void testGetCadence() { try { cadenceDetector.getCadence(true); fail("FilterNotSetException not thrown."); } catch (FilterNotSetException e) { } try { cadenceDetector.getCadence(false); } catch (FilterNotSetException e) { fail("FilterNotSetException thrown incorrectly."); } cadenceDetector.setFilter(new MedianFilter()); try { cadenceDetector.getCadence(true); } catch (FilterNotSetException e) { fail("FilterNotSetException thrown incorrectly."); } cadenceDetector.setFilter(null); } public void testGetStrideLength() { try { cadenceDetector.getStrideLength(true); fail("FilterNotSetException not thrown."); } catch (FilterNotSetException e) { } try { cadenceDetector.getStrideLength(false); } catch (FilterNotSetException e) { fail("FilterNotSetException thrown incorrectly."); } cadenceDetector.setFilter(new MedianFilter()); try { cadenceDetector.getStrideLength(true); } catch (FilterNotSetException e) { fail("FilterNotSetException thrown incorrectly."); } cadenceDetector.setFilter(null); } public void testGetSpeed() { } public void testGetCadenceConfidence() { } public void testGetCurrentCadenceState() { assertNotNull(cadenceDetector.getCurrentCadenceState()); } }