Exemple #1
0
        public void TestRegisterToEvent()
        {
            // Arrange
            var ctrl  = new EventCtrl();
            var uCtrl = new UserCtrl();

            Event e = new Event
            {
                Title             = "test title" + Guid.NewGuid(),
                Description       = "This is a long description\ncontaining newlines",
                NumOfParticipants = 5,
                PriceFrom         = 100.0,
                PriceTo           = 200.0,
                Location          = "Sofiendalsvej 60",
                Datetime          = DateTime.Now.AddHours(1), //+1 hour from now to not trigger the past date exception
                IsPublic          = true
            };
            var   user     = uCtrl.CreateUser("efrgfvd", "fss", "*****@*****.**" + Guid.NewGuid(), "dsasdc");
            Event newEvent = ctrl.CreateEvent(e.Title, e.Description, e.NumOfParticipants, e.PriceFrom, e.PriceTo, e.Location, e.Datetime, e.IsPublic, user);

            // Act
            ctrl.RegisterToEvent(newEvent, user);

            // Assert
            using (var ctx = new DAL.DALContext())
            {
                user     = uCtrl.FindByEmail(user.Email);
                newEvent = ctrl.FindById(newEvent.Id);
                var reg = user.Registrations[0];

                Assert.AreEqual(reg.User, user);
                Assert.AreEqual(reg.Event.Id, newEvent.Id);
                Assert.IsTrue(user.Registrations.Contains(reg));

                Assert.IsTrue(newEvent.Registrations.Exists(r => r.Id == reg.Id));
            }
        }