public void PayrollTracker_SaveButtonClickedEventHandler(object sender, EventArgs e)
        {
            BoardingRepository boardingRepository = new BoardingRepository();
            foreach (KeyValuePair<int, Boarding> entry in dirtyBoardingsMap)
            {
                Boarding boarding = entry.Value;

                bool isValid = dataGridView1_RowValidating(entry.Key, boarding);

                if (isValid)
                {
                    if (boarding.BoardingId == null)
                    {
                        boardingRepository.Add(boarding);
                    }
                    else
                    {
                        boardingRepository.Update(boarding);
                    }

                    dirtyBoardingsMap = new Dictionary<int, Boarding>();
                    refreshDisplayFromDatabase();
                }
            }
        }
示例#2
0
        public void Can_add_new_boarding()
        {
            DateTime date = DateTime.Now;
            // Set the Milliseconds to 0 since MySQL DATETIME does not support milliseconds.
            date = DateTime.ParseExact(date.ToString(), "M/d/yyyy h:mm:ss tt", null);

            var boarding = new Boarding(date, true, _dog1, _boardingCost, _user1);
            IBoardingRepository repository = new BoardingRepository();
            repository.Add(boarding);

            // use session to try to load the boarding
            using (ISession session = _sessionFactory.OpenSession())
            {
                var fromDb = session.Get<Boarding>(boarding.BoardingId);
                // Test that the boarding was successfully inserted
                Assert.IsNotNull(fromDb);
                Assert.AreNotSame(boarding, fromDb);
                Assert.AreEqual(boarding.Date, fromDb.Date);
                Assert.AreEqual(boarding.IsDaycare, fromDb.IsDaycare);
                Assert.AreEqual(boarding.Dog, fromDb.Dog);
                Assert.AreEqual(boarding.BoardingCost, fromDb.BoardingCost);
                Assert.AreEqual(boarding.SundayDaycareCost, fromDb.SundayDaycareCost);
                Assert.AreEqual(boarding.User, fromDb.User);
            }

            repository.Remove(boarding);
        }