public void TestVenueBusTransDecoratorConstructor()
        {
            VenueBusTransport decorator = new VenueBusTransport();

            Assert.AreEqual <string>("", decorator.name);
            Assert.AreEqual <decimal>(0.0M, decorator.cost);
        }
Пример #2
0
        public void TestVenueFactoryRegisterDoesNotOverwriteExisitingKeys()
        {
            VenueFactory  venueFactory    = VenueFactory.GetInstance;
            PrivateObject privateAccessor = new PrivateObject(venueFactory);

            privateAccessor.SetField("venueFeatures", new Hashtable()); // Reset venueFeatures
            Hashtable refVenueFeatures = (Hashtable)privateAccessor.GetField("venueFeatures");

            VenueAfternoonRefreshments mockVAfterRef = Substitute.For <VenueAfternoonRefreshments>();
            VenueBusTransport          mockVBusTrans = Substitute.For <VenueBusTransport>();

            venueFactory.Register(VenueAddOns.AFTERNOON_REFRESHMENTS, mockVAfterRef);
            venueFactory.Register(VenueAddOns.AFTERNOON_REFRESHMENTS, mockVBusTrans);

            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.AFTERNOON_REFRESHMENTS));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVAfterRef));
            Assert.AreEqual <int>(1, refVenueFeatures.Count);
        }
Пример #3
0
        public void TestVenueFactoryRegisterSuccess()
        {
            VenueFactory  venueFactory    = VenueFactory.GetInstance;
            PrivateObject privateAccessor = new PrivateObject(venueFactory);

            privateAccessor.SetField("venueFeatures", new Hashtable()); // Reset venueFeatures
            Hashtable refVenueFeatures = (Hashtable)privateAccessor.GetField("venueFeatures");


            VenueAfternoonRefreshments mockVAfterRef = Substitute.For <VenueAfternoonRefreshments>();
            VenueMorningRefreshments   mockVMornRef  = Substitute.For <VenueMorningRefreshments>();
            VenueEveningMeal           mockVEveMeal  = Substitute.For <VenueEveningMeal>();
            VenueBusTransport          mockVBusTrans = Substitute.For <VenueBusTransport>();
            VenueMiddayLunch           mockVMidLunch = Substitute.For <VenueMiddayLunch>();

            venueFactory.Register(VenueAddOns.MORNING_REFRESHMENTS, mockVMornRef);
            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.MORNING_REFRESHMENTS));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVMornRef));
            Assert.AreEqual <int>(1, refVenueFeatures.Count);

            venueFactory.Register(VenueAddOns.AFTERNOON_REFRESHMENTS, mockVAfterRef);
            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.AFTERNOON_REFRESHMENTS));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVAfterRef));
            Assert.AreEqual <int>(2, refVenueFeatures.Count);

            venueFactory.Register(VenueAddOns.EVENING_MEAL, mockVEveMeal);
            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.EVENING_MEAL));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVEveMeal));
            Assert.AreEqual <int>(3, refVenueFeatures.Count);

            venueFactory.Register(VenueAddOns.BUS_TRANSPORTS, mockVBusTrans);
            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.BUS_TRANSPORTS));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVBusTrans));
            Assert.AreEqual <int>(4, refVenueFeatures.Count);

            venueFactory.Register(VenueAddOns.MIDDAY_LUNCH, mockVMidLunch);
            Assert.IsTrue(refVenueFeatures.ContainsKey(VenueAddOns.MIDDAY_LUNCH));
            Assert.IsTrue(refVenueFeatures.ContainsValue(mockVMidLunch));
            Assert.AreEqual <int>(5, refVenueFeatures.Count);
        }