//-----------------------------------------------------------------------
//
// Copyright (c) 2011 Deltares. All rights reserved.
//
// B.S.T.I.M. The
// tom.the@deltares.nl
// 02-11-2011
// Time serie of PL Lines for Dupuit
//-----------------------------------------------------------------------
namespace Deltares.Dam.Tests
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NUnit.Framework;
using Deltares.Dam.Data;
[TestFixture]
public class DupuitPLLinesTimeSerieTests
{
[Test]
public void CanHandleEmptyPLLines()
{
var dupuitPLLinesTimeSerie = new DupuitPLLinesTimeSerie();
dupuitPLLinesTimeSerie.Entries.Add(new DupuitTimeSerieEntry() { DupuitPlLines = new DupuitPLLines() });
dupuitPLLinesTimeSerie.Entries.Add(new DupuitTimeSerieEntry() { DupuitPlLines = new DupuitPLLines() });
foreach (DupuitTimeSerieEntry entry in dupuitPLLinesTimeSerie.Entries)
{
Assert.AreEqual(0, entry.DupuitPlLines.PLLines.Count);
}
}
private DupuitTimeSerieEntry CreateDupuitTimeSerieEntry(int plLineCount)
{
var dupuitTimeSerieEntry = new DupuitTimeSerieEntry() {DupuitPlLines = new DupuitPLLines()};
for (int plLineIndex = 0; plLineIndex < plLineCount; plLineIndex++)
{
dupuitTimeSerieEntry.DupuitPlLines.PLLines.Add(new PLLine());
}
return dupuitTimeSerieEntry;
}
[Test]
public void CanRemoveLastPLLinesFromAllEntries()
{
DupuitPLLinesTimeSerie dupuitPLLinesTimeSerie = new DupuitPLLinesTimeSerie();
dupuitPLLinesTimeSerie.Entries.Add(CreateDupuitTimeSerieEntry(3));
dupuitPLLinesTimeSerie.Entries.Add(CreateDupuitTimeSerieEntry(3));
foreach (DupuitTimeSerieEntry entry in dupuitPLLinesTimeSerie.Entries)
{
Assert.AreEqual(3, entry.DupuitPlLines.PLLines.Count);
}
dupuitPLLinesTimeSerie.RemoveLastPLLineForAllEntries();
foreach (DupuitTimeSerieEntry entry in dupuitPLLinesTimeSerie.Entries)
{
Assert.AreEqual(2, entry.DupuitPlLines.PLLines.Count);
}
}
}
}