SiLeBAT/FSK-Lab

View on GitHub
de.bund.bfr.knime.pmm.nodes.tests/src/de/bund/bfr/knime/pmm/js/common/TimeSeriesTest.java

Summary

Maintainability
A
30 mins
Test Coverage
package de.bund.bfr.knime.pmm.js.common;

import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.nullValue;

import org.junit.Test;
import org.knime.core.node.InvalidSettingsException;
import org.knime.core.node.NodeSettings;

import de.bund.bfr.knime.pmm.common.TimeSeriesXml;

@SuppressWarnings("static-method")
public class TimeSeriesTest {

    static TimeSeries timeSeries;
    static {
        timeSeries = new TimeSeries();
        timeSeries.name = "t0";
        timeSeries.time = 0.0;
        timeSeries.timeUnit = "h";
        timeSeries.origTimeUnit = "h";
        timeSeries.concentration = 6.147902198294102;
        timeSeries.concentrationUnit = "ln(count/g";
        timeSeries.concentrationUnitObjectType = "CFU";
        timeSeries.origConcentrationUnit = "log10(count/g)";
        timeSeries.concentrationStdDev = 0.91025171;
        timeSeries.numberOfMeasurements = 1;
    }

    @Test
    public void testConstructor() {
        final TimeSeries timeSeries = new TimeSeries();
        assertThat(timeSeries.name, is(nullValue()));
        assertThat(timeSeries.time, is(nullValue()));
        assertThat(timeSeries.timeUnit, is(nullValue()));
        assertThat(timeSeries.concentration, is(nullValue()));
        assertThat(timeSeries.concentrationUnit, is(nullValue()));
        assertThat(timeSeries.concentrationUnitObjectType, is(nullValue()));
        assertThat(timeSeries.origConcentrationUnit, is(nullValue()));
        assertThat(timeSeries.concentrationStdDev, is(nullValue()));
        assertThat(timeSeries.numberOfMeasurements, is(nullValue()));
    }

    @Test
    public void testSaveToNodeSettings() throws InvalidSettingsException {
        final NodeSettings settings = new NodeSettings("irrelevantKey");
        timeSeries.saveToNodeSettings(settings);

        assertThat(settings.getString("name"), equalTo(timeSeries.name));
        assertThat(settings.getDouble("time"), equalTo(timeSeries.time));
        assertThat(settings.getString("timeUnit"), equalTo(timeSeries.timeUnit));
        assertThat(settings.getString("origTimeUnit"), equalTo(timeSeries.origTimeUnit));
        assertThat(settings.getDouble("concentration"), equalTo(timeSeries.concentration));
        assertThat(settings.getString("concentrationUnit"), equalTo(timeSeries.concentrationUnit));
        assertThat(settings.getString("concentrationUnitObjectType"), equalTo(timeSeries.concentrationUnitObjectType));
        assertThat(settings.getString("origConcentrationUnit"), equalTo(timeSeries.origConcentrationUnit));
        assertThat(settings.getDouble("concentrationStdDev"), equalTo(timeSeries.concentrationStdDev));
        assertThat(settings.getInt("numberOfMeasurements"), equalTo(timeSeries.numberOfMeasurements));
    }

    @Test
    public void testLoadFromNodeSettings() {
        final NodeSettings settings = new NodeSettings("irrelevantKey");
        settings.addString("name", timeSeries.name);
        settings.addDouble("time", timeSeries.time);
        settings.addString("timeUnit", timeSeries.timeUnit);
        settings.addString("origTimeUnit", timeSeries.origTimeUnit);
        settings.addDouble("concentration", timeSeries.concentration);
        settings.addString("concentrationUnit", timeSeries.concentrationUnit);
        settings.addString("concentrationUnitObjectType", timeSeries.concentrationUnitObjectType);
        settings.addString("origConcentrationUnit", timeSeries.origConcentrationUnit);
        settings.addDouble("concentrationStdDev", timeSeries.concentrationStdDev);
        settings.addInt("numberOfMeasurements", timeSeries.numberOfMeasurements);

        final TimeSeries obtained = new TimeSeries();
        obtained.loadFromNodeSettings(settings);
        TestUtils.compare(obtained, timeSeries);
    }

    @Test
    public void testToTimeSeries() {
        final TimeSeriesXml timeSeriesXml = new TimeSeriesXml(timeSeries.name, timeSeries.time, timeSeries.timeUnit,
                timeSeries.origTimeUnit, timeSeries.concentration, timeSeries.concentrationUnit,
                timeSeries.concentrationUnitObjectType, timeSeries.origConcentrationUnit,
                timeSeries.concentrationStdDev, timeSeries.numberOfMeasurements);
        final TimeSeries obtained = TimeSeries.toTimeSeries(timeSeriesXml);
        TestUtils.compare(obtained, timeSeries);
    }

    @Test
    public void testToTimeSeriesXml() {
        final TimeSeriesXml obtained = timeSeries.toTimeSeriesXml();

        assertThat(obtained.name, equalTo(timeSeries.name));
        assertThat(obtained.time, equalTo(timeSeries.time));
        assertThat(obtained.timeUnit, equalTo(timeSeries.timeUnit));
        assertThat(obtained.origTimeUnit, equalTo(timeSeries.origTimeUnit));
        assertThat(obtained.concentration, equalTo(timeSeries.concentration));
        assertThat(obtained.concentrationUnit, equalTo(timeSeries.concentrationUnit));
        assertThat(obtained.concentrationUnitObjectType, equalTo(timeSeries.concentrationUnitObjectType));
        assertThat(obtained.origConcentrationUnit, equalTo(timeSeries.origConcentrationUnit));
        assertThat(obtained.concentrationStdDev, equalTo(timeSeries.concentrationStdDev));
        assertThat(obtained.numberOfMeasurements, equalTo(timeSeries.numberOfMeasurements));
    }
}