public void TestFilter() { IUsable s1 = new UsableMock("s1"); IUsable s2 = new UsableMock("s2"); ITrackingDevice t1 = new TrackingMock(1); ITrackingDevice t2 = new TrackingMock(2); IList <IUsage> usage = new List <IUsage>(); IList <IUsage> okUsage = new List <IUsage>(); IUsage u; u = new UsageMock(s1.Availability.StartDate, t1, s1); usage.Add(u); usage.Add(u); okUsage.Add(u); okUsage.Add(u); u = new UsageMock(s1.Availability.StartDate, t1, s2); usage.Add(u); u = new UsageMock(s1.Availability.EndDate, t1, s1); usage.Add(u); okUsage.Add(u); u = new UsageMock(s1.Availability.EndDate.AddDays(1), t1, s1); usage.Add(u); DatePriceDescriptor dpd = new DatePriceDescriptor("p1", "p1test", s1.Availability); DateRangePacket tp = new DateRangePacket(dpd, s1, s1.Availability); IEnumerable <IUsage> result = tp.Filter(usage); IEnumerable <IUsage> expected = usage.Except(okUsage); Assert.AreEqual(expected.Count(), result.Count()); for (int i = 0; i < result.Count(); i++) { Assert.AreEqual(expected.ElementAt(i), result.ElementAt(i)); } }
public void TestCtor() { DatePriceDescriptor desc = new DatePriceDescriptor(sName, sDescription, DateTime.MaxValue, price); s1 = new BasicService(desc); Assert.AreEqual(sName, s1.Name); Assert.AreEqual(sDescription, s1.Description); Assert.AreEqual(price, s1.Price); }
public TicketPacket(DatePriceDescriptor descriptor, IUsable usable, int ticket) : base(descriptor, usable) { #region Precondizioni if (ticket < 0) { throw new ArgumentException("ticket < 0"); } #endregion _ticket = ticket; }
public DateRangePacket(DatePriceDescriptor descriptor, IUsable usable, int days) : base(descriptor, usable) { #region Precondizioni if (days < 0) { throw new ArgumentException("days < 0"); } #endregion _days = days; }
public BasicService(DatePriceDescriptor descriptor) { #region Precondizioni if (descriptor == null) { throw new ArgumentException("descriptor null"); } #endregion _descriptor = descriptor; }
public BasicServiceTest() { sName = "Servizio Base"; sDescription = "Descrizione del servizio base"; august1010 = new DateTime(2010, 8, 10); august1510 = new DateTime(2010, 8, 15); price = 5.10; DatePriceDescriptor desc = new DatePriceDescriptor(sName, sDescription, august1010, august1510, price); s1 = new BasicService(desc); }
public Bundle(ISet<IPacket> packets, DatePriceDescriptor descriptor) { if (packets == null || packets.Count == 0) throw new ArgumentException("packets not valid"); foreach (IPacket packet in packets) if (!packet.Availability.Contains(descriptor.Range)) throw new ArgumentException("packet range not valid" + packet.Name); _packets = packets; if (descriptor == null) throw new ArgumentException("descriptor not valid"); _descriptor = descriptor; }
public AbstractPacket(DatePriceDescriptor descriptor, IUsable usable) { #region Precondizioni if (descriptor == null || usable == null) { throw new ArgumentException("descriptor o usable null"); } if (!usable.Availability.Contains(descriptor.Range)) { throw new ArgumentException("descriptor out of service's range"); } #endregion _descriptor = descriptor; _usable = usable; }