public void ThrowsWhenWritingToAfterClosed() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.Open(OutputStream); property.Close(); property.OpenInterval(); }
public void ThrowsWhenWritingToBeforeOpening() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); var exception = Assert.Throws <InvalidOperationException>(() => property.OpenInterval()); StringAssert.Contains("not currently open", exception.Message); }
public void WritesPropertyNameOnOpenAndNothingOnClose() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foobar"); property.Open(OutputStream); Assert.AreEqual("{\"foobar\":", StringWriter.ToString()); property.Close(); Assert.AreEqual("{\"foobar\":", StringWriter.ToString()); }
public void ClosingMultipleIntervalsWritesCloseArray() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.Open(OutputStream); CesiumIntervalListWriter <TDerived> intervalList = property.OpenMultipleIntervals(); intervalList.Close(); Assert.AreEqual("{\"woot\":[]", StringWriter.ToString()); }
public void MultipleIntervalsWritesOpenArray() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.Open(OutputStream); CesiumIntervalListWriter <TDerived> intervalList = property.OpenMultipleIntervals(); Assert.IsNotNull(intervalList); Assert.AreEqual("{\"woot\":[", StringWriter.ToString()); }
public void SingleIntervalWritesOpenObjectLiteral() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.Open(OutputStream); TDerived interval = property.OpenInterval(); Assert.IsNotNull(interval); Assert.AreEqual("{\"woot\":{", StringWriter.ToString()); }
public void InterpolationDegreeValueWritesInterpolationDegreeProperty() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foo"); property.Open(OutputStream); using (TDerived interval = property.OpenInterval()) { interval.WriteInterpolationDegree(3); } Assert.AreEqual("{\"foo\":{\"interpolationDegree\":3}", StringWriter.ToString()); }
public void InterpolationAlgorithmValueWritesInterpolationAlgorithmProperty() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foo"); property.Open(OutputStream); using (TDerived interval = property.OpenInterval()) { interval.WriteInterpolationAlgorithm(CesiumInterpolationAlgorithm.Hermite); } Assert.AreEqual("{\"foo\":{\"interpolationAlgorithm\":\"HERMITE\"}", StringWriter.ToString()); }
public void WritesBackwardExtrapolationDuration() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foo"); property.Open(OutputStream); using (TDerived interval = property.OpenInterval()) { interval.WriteBackwardExtrapolationDuration(Duration.FromSeconds(12)); } Assert.AreEqual(@"{""foo"":{""backwardExtrapolationDuration"":12}", StringWriter.ToString()); }
public void WritesBackwardExtrapolationType() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foo"); property.Open(OutputStream); using (TDerived interval = property.OpenInterval()) { interval.WriteBackwardExtrapolationType(CesiumExtrapolationType.Extrapolate); } Assert.AreEqual(@"{""foo"":{""backwardExtrapolationType"":""EXTRAPOLATE""}", StringWriter.ToString()); }
public void WritesForwardExtrapolationType() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("foo"); property.Open(OutputStream); using (TDerived interval = property.OpenInterval()) { interval.WriteForwardExtrapolationType(CesiumExtrapolationType.Extrapolate); } Assert.AreEqual("{\"foo\":{\"forwardExtrapolationType\":\"EXTRAPOLATE\"}", StringWriter.ToString()); }
public void MultipleIntervalsAllowsWritingMultipleIntervals() { JulianDate start = new JulianDate(new GregorianDate(2012, 4, 2, 12, 0, 0)); JulianDate stop = new JulianDate(new GregorianDate(2012, 4, 2, 13, 0, 0)); CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.Open(OutputStream); CesiumIntervalListWriter <TDerived> intervalList = property.OpenMultipleIntervals(); using (TDerived interval = intervalList.OpenInterval()) { interval.WriteInterval(start, stop); } using (TDerived interval = intervalList.OpenInterval()) { interval.WriteInterval(new TimeInterval(start, stop)); } intervalList.Close(); Assert.AreEqual("{\"woot\":[{\"interval\":\"20120402T12Z/20120402T13Z\"},{\"interval\":\"20120402T12Z/20120402T13Z\"}]", StringWriter.ToString()); }
public void ThrowsWhenWritingToBeforeOpening() { CesiumPropertyWriter <TDerived> property = CreatePropertyWriter("woot"); property.OpenInterval(); }