Пример #1
0
        public void Can_add_new_timeCard()
        {
            DateTime timeIn = DateTime.Now;
            // Set the Milliseconds to 0 since MySQL DATETIME does not support milliseconds.
            timeIn = DateTime.ParseExact(timeIn.ToString(), "M/d/yyyy h:mm:ss tt", null);
            DateTime timeOut = timeIn.AddHours(8);
            var timeCard = new TimeCard { TimeIn = timeIn, TimeOut = timeOut, User = _user };
            ITimeCardRepository repository = new TimeCardRepository();
            repository.Add(timeCard);

            // use session to try to load the timeCard
            using (ISession session = _sessionFactory.OpenSession())
            {
                var fromDb = session.Get<TimeCard>(timeCard.TimeCardId);
                // Test that the timeCard was successfully inserted
                Assert.IsNotNull(fromDb);
                Assert.AreNotSame(timeCard, fromDb);
                Assert.AreEqual(timeCard.TimeIn, fromDb.TimeIn);
                Assert.AreEqual(timeCard.TimeOut, fromDb.TimeOut);
                Assert.AreEqual(timeCard.User, fromDb.User);
            }

            repository.Remove(timeCard);
        }
        private void timeInButton_Click(object sender, System.EventArgs e)
        {
            TimeCardRepository timeCardRepository = new TimeCardRepository();
            TimeCard timeCard = new TimeCard();
            timeCard.User = session.GetUser();
            timeCard.TimeIn = DateTime.Now;
            timeCardRepository.Add(timeCard);

            // disable time in button now that time in has been
            // entered, and enable time out button.
            this.timeInButton.Visible = false;
            this.timeOutButton.Visible = true;

            // call the time card user control's time out
            // button clicked method.
            timeCardUserControl.PayrollTracker_TimeOutButtonClickedEventHandler(this, e);
        }