package org.signalml.domain.signal.filter.iir.helper; import static org.signalml.SignalMLAssert.assertArrayEquals; import org.junit.Test; import org.signalml.domain.signal.samplesource.ChannelSelectorSampleSource; import org.signalml.domain.signal.samplesource.DoubleArraySampleSource; public class TrimSignalSampleSourceTest { @Test public void testGetSamples() { double[][] samples = new double[][] {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14}}; DoubleArraySampleSource multichannelSampleSource = new DoubleArraySampleSource(samples, samples.length, samples[0].length); ChannelSelectorSampleSource channelSelectorSampleSource = new ChannelSelectorSampleSource(multichannelSampleSource, 0); TrimSignalSampleSource trimmedSampleSource = new TrimSignalSampleSource(channelSelectorSampleSource, 3, 10); //test1 double[] expected = new double[]{4, 5, 6, 7, 8, 9, 10}; double[] actual = new double[expected.length]; trimmedSampleSource.getSamples(actual, 0, trimmedSampleSource.getSampleCount(), 0); assertArrayEquals(expected, actual, 1e-5); //test2 expected = new double[] {5, 6, 7, 8}; actual = new double[expected.length]; trimmedSampleSource.getSamples(actual, 1, 4, 0); assertArrayEquals(expected, actual, 1e-5); } }