public ActionResult Index(int dinnerCount = 100)
 {
     const string name = "Nerd";
     var membershipService = new AccountMembershipService();
     if(membershipService.ValidateUser(name, "password") == false) {
         membershipService.CreateUser(name, "password", "*****@*****.**");
     }
     var repo = new DinnerRepository();
     foreach(var d in repo.All) {
         repo.Delete(d.DinnerID);
     }
     for (var i = 0; i < dinnerCount; i++) {
         var dinner = new Dinner {Title = "Nerd-Out",
                                  Description = "Nerding out with the nerds",
                                  EventDate = DateTime.Now.Add(new TimeSpan(30, 0, 0, 0)),
                                  ContactPhone = "403-999-9999",
                                  Address = "Calgary, AB",
                                  Country = "Canada",
                                  HostedById = name,
                                  HostedBy = name};
         var rsvp = new RSVP {AttendeeNameId = name, AttendeeName = name};
         dinner.RSVPs = new List<RSVP> {rsvp};
         repo.InsertOrUpdate(dinner);
     }
     try {
         repo.Save();
     }
     catch(DbEntityValidationException e) {
         var error = e.EntityValidationErrors.First().ValidationErrors.First();
         return new ContentResult {Content = string.Format("{0}: {1}", error.PropertyName, error.ErrorMessage)};
     }
     return new ContentResult{Content = "Success"};
 }
        public void AddDeleteTest()
        {
            var dinner = new Dinner()
                                {
                                    Address = "address",
                                    ContactPhone = "244-444-5555",
                                    Country = "USA",
                                    Description = "test dinner",
                                    DinnerID = -1,
                                    EventDate = DateTime.Now.AddDays(1),
                                    HostedBy = "host",
                                    Latitude = 1.222,
                                    Longitude = 3.998,
                                    Title = "Test Dinner"
                                };
            repos.Add(dinner);
            repos.Save();
            Assert.AreEqual(12, repos.FindAllDinners().Count());

            var result = repos.FindUpcomingDinners().ToList();
            Assert.AreEqual("Test Dinner", result.ToArray()[0].Title);

            repos.Delete(dinner);
            repos.Save();
            Assert.AreEqual(11, repos.FindAllDinners().Count());
        }
 public ActionResult Create()
 {
     Dinner dinner = new Dinner(){
         EventDate=DateTime.Now.AddDays(7)
     };
     return View(new DinnerFormViewModel(dinner));
 }
        public static Tuple<List<Dinner>, List<Event>> CreateTestDinners()
        {
            List<Dinner> dinners = new List<Dinner>();
            List<Event> events = new List<Event>();

            for (int i = 1; i <= 101; i++)
            {

                Dinner sampleDinner = new Dinner()
                {
                    DinnerID = i,
                    DinnerGuid = Guid.NewGuid(),
                    Title = "Sample Dinner",
                    HostedBy = "SomeUser",
                    Address = "Some Address",
                    Country = "USA",
                    ContactPhone = "425-555-1212",
                    Description = "Some description",
                    EventDate = DateTime.Now.AddDays(i),
                    Latitude = 99,
                    Longitude = -99
                };
                dinners.Add(sampleDinner);

                var e = new Event();
                e.Data = @"{""Name"":""SomeUser"",""FriendlyName"":""SomeUser""}";
                e.EventType = "NerdDinner.Events.RSVPed";
                e.DateTime = DateTime.UtcNow;
                e.AggregateId = sampleDinner.DinnerGuid;
                events.Add(e);
            }

            return Tuple.Create(dinners, events);
        }
        public static List<Dinner> CreateTestDinners()
        {
            List<Dinner> dinners = new List<Dinner>();

            for (int i = 1; i <= 100; i++)
            {

                Dinner sampleDinner = new Dinner()
                                      {
                                              Title = "Sample Dinner",
                                              HostedBy = "SomeUser",
                                              Address = "California",
                                              Country = "USA",
                                              ContactPhone = "425-555-1212",
                                              Description = "Some description",
                                              EventDate = DateTime.Now.AddDays(i),
                                              Latitude = 99,
                                              Longitude = -99
                                      };

                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = "SomeUser";
                sampleDinner.AddRsvp(rsvp);

                dinners.Add(sampleDinner);
            }

            return dinners;
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    dinner.HostedBy = User.Identity.Name;

                    var rsvp = new RSVP();
                    rsvp.AttendeeName = User.Identity.Name;
                    dinner.RSVPs.Add(rsvp);

                    dinnerRepository.Add(dinner);
                    dinnerRepository.Save();

                    return RedirectToAction("Details", new {id = dinner.DinnerID});
                }
                catch
                {
                    ModelState.AddModelErrors(dinner.GetRuleViolations());
                }
            }

            return View(new DinnerFormViewModel(dinner));
        }
 public void Delete(Dinner dinner)
 {
     foreach (var rsvp in dinner.RSVPs) {
         entities.RSVPs.DeleteObject(rsvp);
     }
     entities.Dinners.DeleteObject(dinner);
 }
        List<Dinner> CreateTestDinners()
        {

            List<Dinner> dinners = new List<Dinner>();

            for (int i = 0; i < 101; i++)
            {

                Dinner sampleDinner = new Dinner()
                {
                    DinnerID = i,
                    Title = "Sample Dinner",
                    HostedBy = "SomeUser",
                    Address = "Some Address",
                    Country = "USA",
                    EventDate = DateTime.Now.AddDays(i),
                    Latitude = 99,
                    Longitude = -99
                };

                dinners.Add(sampleDinner);
            }

            return dinners;
        }
Beispiel #9
0
 public void Delete(Dinner dinner)
 {
     foreach (var rsvp in dinner.RSVPs)
     {
         _entities.RSVPs.Remove(rsvp);
     }
     _entities.Dinners.Remove(dinner);
 }
        public void Delete(Dinner dinner)
        {
            //foreach (RSVP rsvp in dinner.RSVPs.ToList())
            //    db.RSVPs.DeleteObject(rsvp);
            //db.Dinners.DeleteObject(dinner);
            var roi = new RiakObjectId(DinnerBucket, dinner.DinnerID);

            _client.Delete(roi);
        }
        public void Save(Dinner dinner)
        {
            if (!dinner.IsValid)
            {
                throw new ApplicationException("Rule violations");
            }

            _session.SaveOrUpdate(dinner);
        }
        public void Add(Dinner dinner)
        {
            EnsureTransaction();

            if (!dinner.IsValid)
                throw new ApplicationException("Rule violations prevent saving");

            session.Save(dinner);
        }
        public ActionResult Create()
        {
            var dinner = new Dinner()
            {
                EventDate = DateTime.Now.AddDays(7),
                HostedBy = User.Identity.Name
            };

            return View(dinner);
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                var command = new HostDinner(User.Identity.Name);
                new HostDinnerCommandHandler().Handle(command, dinner, db);

                return RedirectToAction("Index");
            }

            return View(dinner);
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                var command = new HostDinner(new DinnerId(dinner.DinnerID), User.Identity.Name, dinner.Title, dinner.EventDate, dinner.Description, dinner.ContactPhone, dinner.Address, dinner.Country);
                new HostDinnerApplicationService(db).When(command);

                return RedirectToAction("Index");
            }

            return View(dinner);
        }
 public ActionResult Create(Dinner dinner)
 {
     if (ModelState.IsValid) {
         dinner.HostedBy = User.Identity.Name;
         RSVP rsvp = new RSVP();
         rsvp.AttendeeName = User.Identity.Name;
         dinner.RSVPs.Add(rsvp);
         dinnerrepository.Add(dinner);
         dinnerrepository.Save();
         return RedirectToAction("Details", new { id = dinner.DinnerID });
     }
     return View(new DinnerFormViewModel(dinner));
 }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                var command = new HostDinner(new DinnerId(Guid.NewGuid()), User.Identity.Name, dinner.Title, dinner.EventDate, dinner.Description, dinner.ContactPhone, dinner.Address, dinner.Country);
                //new HostDinnerApplicationService(Globals.Repository).When(command);
                Globals.Bus.Send(command);

                return RedirectToAction("Index");
            }

            return View(dinner);
        }
Beispiel #18
0
        //
        // Insert/Delete Methods

        public void InsertOrUpdate(Dinner dinner)
        {
            if (dinner.DinnerID == default(int))
            {
                // New entity
                db.Dinners.Add(dinner);
            }
            else
            {
                // Existing entity
                db.Entry(dinner).State = EntityState.Modified;
            }
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                dinner.HostedBy = "SomeUser";

                dinnerRepository.Add(dinner);
                dinnerRepository.Save();

                return RedirectToAction("Details", new { id = dinner.DinnerID });
            }
            return View(new DinnerFormViewModel(dinner));
        }
Beispiel #20
0
 public static Dinner CreateDinner()
 {
     Dinner dinner = new Dinner();
     dinner.Title = "New Test Dinner";
     dinner.EventDate = DateTime.Now.AddDays(7);
     dinner.Address = "5 Main Street";
     dinner.Description = "Desc";
     dinner.ContactPhone = "503-555-1212";
     dinner.HostedBy = "scottgu";
     dinner.Latitude = 45;
     dinner.Longitude = 45;
     dinner.Country = "USA";
     return dinner;
 }
        public void CreateAction_Should_Fail_Give_Empty_Dinner()
        {
            // Arrange
            var controller = CreateDinnersControllerAs("scottgu");
            Dinner dinner = new Dinner();

            // Act
            ViewResult result = (ViewResult)controller.Create(dinner);

            // Assert
            Assert.IsInstanceOf(typeof(ViewResult), result);
            Assert.IsTrue(result.ViewData.ModelState.IsValid == false);
            Assert.AreEqual(6, result.ViewData.ModelState.Sum(p => p.Value.Errors.Count), "Expected Errors");
        }
Beispiel #22
0
 public static Event DinnerToEvent(Dinner dinner, iCalendar iCal)
 {
     string eventLink = "http://nrddnr.com/" + dinner.DinnerID;
     Event evt = iCal.Create<Event>();
     evt.Start = new iCalDateTime(dinner.EventDate);
     evt.Duration = new TimeSpan(3, 0, 0);
     evt.Location = dinner.Address;
     evt.Summary = String.Format("{0} with {1}", dinner.Description, dinner.HostedBy);
     evt.Contacts.Add(dinner.ContactPhone);
     evt.GeographicLocation = new GeographicLocation(dinner.Latitude, dinner.Longitude);
     evt.Url = new Uri(eventLink);
     evt.Description = eventLink;
     return evt;
 }
 public static Event DinnerToEvent(Dinner dinner, iCalendar iCal)
 {
     string eventLink = "http://nrddnr.com/" + dinner.DinnerID;
     Event evt = iCal.Create<Event>();
     evt.Start = dinner.EventDate;
     evt.Duration = new TimeSpan(3, 0, 0);
     evt.Location = dinner.Address;
     evt.Summary = String.Format("{0} {2} {1}", dinner.Description, dinner.HostedBy, Resources.Resources.with);
     evt.AddContact(dinner.ContactPhone);
     evt.Geo = new Geo(dinner.Latitude, dinner.Longitude);
     evt.Url = eventLink;
     evt.Description = eventLink;
     return evt;
 }
Beispiel #24
0
        public void Dinner_Should_Not_Be_Valid_When_Some_Properties_Incorrect()
        {
            //Arrange
            Dinner dinner = new Dinner()
            {
                Title = "Test title",
                Country = ""
            };

            // Act
            bool isValid = dinner.IsValid();

            //Assert
            Assert.IsFalse(isValid);
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid) {
                dinner.HostedById = this.nerdIdentity.Name;
                dinner.HostedBy = this.nerdIdentity.FriendlyName;

                dinner.RSVP(this.nerdIdentity.Name, this.nerdIdentity.FriendlyName);

                dinnerRepository.InsertOrUpdate(dinner);
                dinnerRepository.SubmitChanges();

                return RedirectToAction("Details", new { id=dinner.DinnerID });
            }

            return View(dinner);
        }
        public void Save(Dinner dinner)
        {
            if (!dinner.IsValid)
                throw new ApplicationException("Rule violations");

            var index = _dinners.IndexOf(_dinners.Where(d => d.DinnerID == dinner.DinnerID).FirstOrDefault());
            if (index >= 0)
            {
                _dinners.RemoveAt(index);
                _dinners.Insert(index, dinner);
                return;
            }

            dinner.DinnerID = _dinners.Count;
            _dinners.Add(dinner);
        }
        private static JsonDinner JsonDinnerFromDinner(Dinner dinner)
        {
            return new JsonDinner
            {
                DinnerId = dinner.DinnerId,
                EventDate = dinner.EventDate,
                Latitude = dinner.Latitude,
                Longitude = dinner.Longitude,
                Title = dinner.Title,
                Description = dinner.Description,
                RSVPCount = dinner.GetRsvpCount().ToString(),

                //TODO: Need to mock this out for testing...
                //Url = Url.RouteUrl("PrettyDetails", new { Id = dinner.DinnerID } )
                Url = dinner.DinnerId.ToString()
            };
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                dinner.HostedBy = User.Identity.Name;

                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = User.Identity.Name;

                dinner.RSVPs = new List<RSVP>();
                dinner.RSVPs.Add(rsvp);

                db.Dinners.Add(dinner);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(dinner);
        }
Beispiel #29
0
        public void Dinner_Should_Be_Valid_When_All_Properties_Correct()
        {

            //Arrange
            Dinner dinner = new Dinner
            {
                Title = "Test title",
                EventDate = DateTime.Now,
                HostedBy = "ScottGu",
                Address = "One Microsoft Way",
                Country = "USA",
                Latitude = 93,
                Longitude = -92,
            };

            // Act
            bool isValid = dinner.IsValid();

            //Assert
            Assert.IsTrue(isValid);
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid) {
                dinner.HostedById = this.nerdIdentity.Name;
                dinner.HostedBy = this.nerdIdentity.FriendlyName;

                RSVP rsvp = new RSVP();
                rsvp.AttendeeNameId = this.nerdIdentity.Name;
                rsvp.AttendeeName = this.nerdIdentity.FriendlyName;

                dinner.RSVPs = new List<RSVP>();
                dinner.RSVPs.Add(rsvp);

                dinnerRepository.InsertOrUpdate(dinner);
                dinnerRepository.Save();

                return RedirectToAction("Details", new { id=dinner.DinnerID });
            }

            return View(dinner);
        }
 public void Delete(Dinner dinner)
 {
     db.Dinners.DeleteOnSubmit(dinner);
     db.SubmitChanges();
 }
 public void Update(Dinner dinner)
 {
     db.SubmitChanges();
 }
 public void Add(Dinner dinner)
 {
     db.Dinners.InsertOnSubmit(dinner);
     db.SubmitChanges();
 }
Beispiel #34
0
 /// <summary>
 /// Deprecated Method for adding a new object to the Dinners EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToDinners(Dinner dinner)
 {
     base.AddObject("Dinners", dinner);
 }
Beispiel #35
0
 public void Delete(Dinner dinner)
 {
     db.RSVPs.DeleteAllOnSubmit(dinner.RSVPs);
     db.Dinners.DeleteOnSubmit(dinner);
 }
Beispiel #36
0
        //
        // Insert/Delete Methods

        public void Add(Dinner dinner)
        {
            db.Dinners.Add(dinner);
        }
Beispiel #37
0
        public void Delete(Dinner dinner)
        {
 
            db.RSVPs.RemoveRange(dinner.RSVPs);
            db.Dinners.Remove(dinner);
        }
 public DinnerFormViewModel(Dinner dinner)
 {
     Dinner    = dinner;
     Countries = new SelectList(PhoneValidator.Countries, Dinner.Country);
 }
 partial void DeleteDinner(Dinner instance);
 partial void UpdateDinner(Dinner instance);
 partial void InsertDinner(Dinner instance);
Beispiel #42
0
 //Constructor
 public DinnerFormViewModel(Dinner dinner)
 {
     Dinner    = dinner;
     Countries = new SelectList(_countries, dinner.Country);
 }
        public void Delete(Dinner dinner)
        {
            EnsureTransaction();

            session.Delete(dinner);
        }
Beispiel #44
0
 public DinnerFromViewModel(Dinner dinner)
 {
     Dinner    = dinner;
     Countries = new SelectList(nerdDinnerDB.Countries, dinner.Country);
 }
Beispiel #45
0
 public void Delete(Dinner dinner)
 {
     db.Dinners.Remove(dinner);
     Save();
 }
Beispiel #46
0
 private void detach_Dinners(Dinner entity)
 {
     this.SendPropertyChanging();
     entity.Country = null;
 }
Beispiel #47
0
        //
        // Insert/Delete Methods

        public void Add(Dinner dinner)
        {
            db.Dinners.InsertOnSubmit(dinner);
        }
Beispiel #48
0
        //
        // Insert/Delete Methods

        public void Add(Dinner dinner)
        {
            entities.Dinners.AddObject(dinner);
        }
Beispiel #49
0
 private void attach_Dinners(Dinner entity)
 {
     this.SendPropertyChanging();
     entity.Country = this;
 }
        //
        // Insert/Delete Methods

        public void Add(Dinner dinner)
        {
            db.Dinners.AddObject(dinner);
        }