public void TestGetTempIPs() { MonthlyMeansOverYearsStepIntegratorFacade a = new MonthlyMeansOverYearsStepIntegratorFacade(); var ips = a.GetTempIPs(new TimeSegment(1931, 1932, 106, 166, 0, 24)); //16 april till 15 Jun Assert.AreEqual(3, ips.Indices.Length); Assert.AreEqual(3, ips.Indices[0]); Assert.AreEqual(4, ips.Indices[1]); Assert.AreEqual(5, ips.Indices[2]); Assert.AreEqual(ips.Weights[1], ips.Weights[0] * 2.0); Assert.AreEqual(ips.Weights[1], ips.Weights[2] * 2.0); ips = a.GetTempIPs(new TimeSegment(1944, 1944, 107, 167, 0, 24)); //16 april till 15 Jun Assert.AreEqual(3, ips.Indices.Length); Assert.AreEqual(3, ips.Indices[0]); Assert.AreEqual(4, ips.Indices[1]); Assert.AreEqual(5, ips.Indices[2]); Assert.AreEqual(ips.Weights[1], ips.Weights[0] * 2.0); Assert.AreEqual(ips.Weights[1], ips.Weights[2] * 2.0); ips = a.GetTempIPs(new TimeSegment(1931, 1931, 244, 273, 0, 24)); //september Assert.AreEqual(1, ips.Indices.Length); Assert.AreEqual(8, ips.Indices[0]); ips = a.GetTempIPs(new TimeSegment(1931, 1932, 305, 59, 0, 24)); //from start of november till end of feburary Assert.AreEqual(4, ips.Indices.Length); int[] indeces = new int[] { 0, 1, 10, 11 }; for (int i = 0; i < 4; i++) { Assert.AreEqual(ips.Weights[0], ips.Weights[i]); Assert.IsTrue(indeces.Contains(ips.Indices[i])); } }
public void TestYearsRange() { var a = new MonthlyMeansOverYearsStepIntegratorFacade(2000, 2005); var t = new TimeRegionExtensions.TimeSegment(2000, 2005, 1, 31, 0, 24); var c = a.GetCoverage(t); Assert.AreEqual(DataCoverageResult.DataWithUncertainty, c); }
public void TestGetBoundingBox() { MonthlyMeansOverYearsStepIntegratorFacade a = new MonthlyMeansOverYearsStepIntegratorFacade(); IndexBoundingBox ibb = a.GetBoundingBox(new TimeSegment(1931, 1932, 106, 166, 0, 24)); Assert.AreEqual(3, ibb.first); Assert.AreEqual(5, ibb.last); ibb = a.GetBoundingBox(new TimeSegment(1944, 1944, 107, 167, 0, 24)); Assert.AreEqual(3, ibb.first); Assert.AreEqual(5, ibb.last); ibb = a.GetBoundingBox(new TimeSegment(1931, 1931, 244, 273, 0, 24)); Assert.AreEqual(8, ibb.first); Assert.AreEqual(8, ibb.last); ibb = a.GetBoundingBox(new TimeSegment(1931, 1932, 305, 59, 0, 24)); Assert.AreEqual(0, ibb.first); Assert.AreEqual(11, ibb.last); }