public void Validate_With_IValidatableObject()
        {
            using (var context = new CodeCampContext(TestHelpers.TestDatabaseName))
            {
                // IValidatableObject Validate method is not called if validation attributes fail first.
                CodeCampEvent codeCamp = new CodeCampEvent();
                Console.WriteLine("Code Camp Valdation check 1");
                TestHelpers.WriteValiationResults(context, codeCamp);

                // IValidatableObject Validate method is called because validation attributes passed.
                Console.WriteLine("\nCode Camp Valdation check 2");
                codeCamp.Location.Name = "Event Name";
                TestHelpers.WriteValiationResults(context, codeCamp);

                Console.WriteLine("\nCode Camp Valdation check 3");
                codeCamp.StartDate = DateTime.Today;
                codeCamp.EndDate = DateTime.Today.AddDays(1);
                codeCamp.Location.State = "NC";
                TestHelpers.WriteValiationResults(context, codeCamp);

            }
        }
        public void Validate_Multiple_Entities()
        {
            using (var context = new CodeCampContext(TestHelpers.TestDatabaseName))
            {
                Speaker speaker = new Speaker
                                      {
                                          FirstName = "Test",
                                          Presentations = new Collection<Presentation>(new[] {new Presentation()})
                                      };

                Presentation presentation = new Presentation {Speaker = new Speaker()};

                CodeCampEvent codeCamp = new CodeCampEvent
                                             {
                                                 Topics = new Collection<EventSession>(new []{new EventSession{Presentation = presentation} })
                                             };

                context.Speakers.Add(speaker);

                context.CodeCampEvents.Add(codeCamp);

                TestHelpers.WriteValiationResults(context);
            }
        }