Esempio n. 1
0
            public void GetByBookingWithInValidBookingExpectNoBookingItemsReturned()
            {
                //Arrange
                var bookingItemManager = new BookingItemManager();
                const int BOOKING_ID = -1;

                var bookingItemDao = MockRepository.GenerateMock<IBookingItemDao>();
                bookingItemManager.BookingItemDao = bookingItemDao;
                bookingItemDao.Stub(b => b.GetByBooking(BOOKING_ID)).Return(null);
                 
                // Act
                var bookingItemsReturned = bookingItemManager.GetByBooking(BOOKING_ID);

                // Assert
                Assert.IsNull(bookingItemsReturned, "BookingItems are not null.");
            }
Esempio n. 2
0
            public  void GetByBookingWithValidBookingExpectBookingItemsReturned()
            {
                //Arrange
                var bookingItemManager = new BookingItemManager();
                const int BOOKING_ID = 1;
                var bookingItems = new List<BookingItem>
                    {
                        new BookingItem { Id = 1 },
                        new BookingItem { Id = 2 }
                    };

                var bookingItemDao = MockRepository.GenerateMock<IBookingItemDao>();
                bookingItemManager.BookingItemDao = bookingItemDao;
                bookingItemDao.Stub(b => b.GetByBooking(BOOKING_ID)).Return(bookingItems);

                // Act
                var bookingItemsReturned = bookingItemManager.GetByBooking(BOOKING_ID);

                // Assert
                Assert.IsNotNull(bookingItemsReturned, "BookingItems are null.");
                Assert.AreEqual(bookingItems, bookingItemsReturned, "BookingItems return are not correct.");

            }
Esempio n. 3
0
            public void GetBookingChargesWithValidBookingExpectBookingItemsReturned()
            {
                //Arrange
                var bookingItemManager = new BookingItemManager();
                const int BOOKING_ID = 1;
                var bookingItems = new List<BookingItem>
                    {
                        new BookingItem { Id = 1, ItemType = ItemTypeEnum.Charge },
                        new BookingItem { Id = 2, ItemType = ItemTypeEnum.Discount },
                        new BookingItem { Id = 3, ItemType = ItemTypeEnum.Breakfast }
                    };

                var bookingItemDao = MockRepository.GenerateMock<IBookingItemDao>();
                bookingItemManager.BookingItemDao = bookingItemDao;

                bookingItemDao.Stub(b => b.GetByBooking(BOOKING_ID)).Return(bookingItems);
                bookingItemDao.Expect(b => b.GetConstituentsByItemId(Arg<int>.Is.Equal(1))).Return(new List<BookingConstituent>()).Repeat.Once();
                bookingItemDao.Expect(b => b.GetConstituentsByItemId(Arg<int>.Is.Equal(2))).Return(new List<BookingConstituent>()).Repeat.Once();

                // Act
                var bookingItemsReturned = bookingItemManager.GetBookingCharges(BOOKING_ID);

                // Assert
                Assert.IsNotNull(bookingItemsReturned, "BookingItems are null.");
                Assert.AreEqual(2, bookingItemsReturned.Count, "BookingItems returned are not correct.");

                foreach (var bookingItem in bookingItemsReturned)
                {
                    Assert.IsTrue(bookingItem.ItemType == ItemTypeEnum.Charge || bookingItem.ItemType == ItemTypeEnum.Discount, "Booking item type returned is not correct.");
                }

                bookingItemDao.VerifyAllExpectations();
            }
Esempio n. 4
0
            public void DeleteBookingItemCallsCorrectMethod()
            {
                //Arrange
                const int BOOKING_ITEM_ID = 1;

                var bookingItemManager = new BookingItemManager();
                
                var bookingItemDao = MockRepository.GenerateMock<IBookingItemDao>();
                bookingItemManager.BookingItemDao = bookingItemDao;

                bookingItemDao.Expect(b => b.CancelItem(Arg<int>.Is.Anything)).Return(true);

                // Act
                bookingItemManager.DeleteBookingItem(BOOKING_ITEM_ID);

                // Assert
                bookingItemDao.VerifyAllExpectations();
            }
Esempio n. 5
0
            public void CreateBookingChargeWithInvalidChargeThrowsValidationException()
            {
                //Arrange
                var bookingItemManager = new BookingItemManager();

                var bookingItem = new BookingItem
                {
                    BookingId = 1,
                    EventDate = DateTime.UtcNow,
                    Charge = new Charge()
                };
                
                // Act
                bookingItemManager.CreateBookingCharge(bookingItem);

                // Assert
                Assert.Fail("No validation exception was thrown");
            }
Esempio n. 6
0
            public void CreateBookingChargeCallsCorrectMethod()
            {
                //Arrange
                var bookingItemManager = new BookingItemManager();

                var bookingItem = new BookingItem
                    {
                        BookingId = 1,
                        EventDate = DateTime.UtcNow,
                        Charge = new Charge
                            {
                                Id = 1,
                                ChargeCategory = new ChargeCategory
                                    {
                                        Id = 1,
                                        Name = "Category"
                                    },
                                ChargeCostType = new ChargeCostType { Type = ChargeCostTypeEnum.Variable },
                                ChargeType = new ChargeType { Type = ChargeTypeEnum.Charge },
                                Name = "Charge"
                            }
                    };

                var bookingItemDao = MockRepository.GenerateMock<IBookingItemDao>();
                bookingItemManager.BookingItemDao = bookingItemDao;

                bookingItemDao.Expect(b => b.CreateBookingCharge(Arg<BookingItem>.Is.Anything)).WhenCalled(delegate { bookingItem.Id = 1; });

                // Act
                bookingItemManager.CreateBookingCharge(bookingItem);

                // Assert
                bookingItemDao.VerifyAllExpectations();
            }