public void ConcatSetsIsLast() { IMeasurement srate = new Measurement(1000, "Hz"); IOutputData outData1 = new OutputData(this.Data, srate, false); IOutputData outData2 = new OutputData(this.Data, srate, true); Assert.That(outData1.IsLast, Is.Not.EqualTo(outData2.IsLast)); Assert.That(outData1.Concat(outData1).IsLast, Is.EqualTo(outData1.IsLast)); Assert.That(outData2.Concat(outData2).IsLast, Is.EqualTo(outData2.IsLast)); Assert.That(outData1.Concat(outData2).IsLast, Is.True); Assert.That(outData2.Concat(outData1).IsLast, Is.True); }
public void ConcatThrowsForSampleRateMismatch() { var srate1 = new Measurement(1000, "Hz"); var srate2 = new Measurement(100, "Hz"); IOutputData outData1 = new OutputData(this.Data, srate1, false); IOutputData outData2 = new OutputData(this.Data, srate2, false); Assert.Throws <ArgumentException>(() => outData1.Concat(outData2)); Assert.Throws <ArgumentException>(() => outData2.Concat(outData1)); }
public void ConcatenatesOutputData() { IMeasurement srate = new Measurement(1000, "Hz"); IOutputData outData1 = new OutputData(this.Data, srate, false); IOutputData outData2 = new OutputData(this.Data.Concat(this.Data).ToList(), srate, true); var actual = outData1.Concat(outData2); var expectedData = this.Data.Concat(this.Data).Concat(this.Data).ToList(); Assert.That(actual.Data, Is.EqualTo(expectedData)); Assert.That(actual.SampleRate, Is.EqualTo(srate)); }
public void ConcatThrowsWithEitherStreamConfiguration() { IMeasurement srate = new Measurement(1000, "Hz"); IOutputData outData1 = new OutputData(this.Data, srate, false); IOutputData outData2 = new OutputData(this.Data, srate, false); Assert.DoesNotThrow(() => outData1.Concat(outData2)); var outData3 = outData1.DataWithStreamConfiguration(streamFake, new Dictionary <string, object>()); Assert.Throws <ArgumentException>(() => outData3.Concat(outData2)); Assert.Throws <ArgumentException>(() => outData2.Concat(outData3)); }
public void ConcatThrowsWithEitherExternalDeviceConfiguration() { IMeasurement srate = new Measurement(1000, "Hz"); IOutputData outData1 = new OutputData(this.Data, srate, false); IOutputData outData2 = new OutputData(this.Data, srate, false); Assert.DoesNotThrow(() => outData1.Concat(outData2)); var dev = new UnitConvertingExternalDevice("DevName", "DevManufacturer", new Measurement(0, "V")); var outData3 = outData1.DataWithExternalDeviceConfiguration(dev, new Dictionary <string, object>()); Assert.Throws <ArgumentException>(() => outData3.Concat(outData2)); Assert.Throws <ArgumentException>(() => outData2.Concat(outData3)); }