Ejemplo n.º 1
0
        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));
            }
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
 public TicketPacket(DatePriceDescriptor descriptor, IUsable usable, int ticket) : base(descriptor, usable)
 {
     #region Precondizioni
     if (ticket < 0)
     {
         throw new ArgumentException("ticket < 0");
     }
     #endregion
     _ticket = ticket;
 }
Ejemplo n.º 4
0
 public DateRangePacket(DatePriceDescriptor descriptor, IUsable usable, int days) : base(descriptor, usable)
 {
     #region Precondizioni
     if (days < 0)
     {
         throw new ArgumentException("days < 0");
     }
     #endregion
     _days = days;
 }
Ejemplo n.º 5
0
 public BasicService(DatePriceDescriptor descriptor)
 {
     #region Precondizioni
     if (descriptor == null)
     {
         throw new ArgumentException("descriptor null");
     }
     #endregion
     _descriptor = descriptor;
 }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
 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;
 }
Ejemplo n.º 8
0
 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;
 }