public void t_Person_Delete()
        {
            Person_ado personAdo = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                personAdo = Person_ado.CreatePerson_ado(TestHelper.TestGuid1, "First Name", "Last Name", 1, 2, true, true);
                personAdo.EmailAddress = "asdf@adfasd";
                personAdo.PhoneNumber  = "(651) 646-8007";
                iba.AddToPerson_ado(personAdo);
            });
            List <Person_ado> personAdolist = DbTestHelper.LoadExtraneousPersons();

            PersonMapper.Delete(new Person()
            {
                Id = personAdo.PersonId
            });

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var PersonQuery = from Persons in iba.Person_ado select Persons;
                Assert.IsNotNull(PersonQuery, "Query result is null");
                Assert.AreEqual(personAdolist.Count(), PersonQuery.Count(), "Wrong number of results in query");
                validateExtrapersonAdos(personAdolist, PersonQuery);
            }
        }
        /// <summary>
        /// Loads extra Person objects to improve testing
        /// </summary>
        /// <returns>
        /// List of <see cref="Person_ado"/> objects
        /// </returns>
        public static List <Person_ado> LoadExtraneousPersons()
        {
            List <Person_ado> personList = new List <Person_ado>();

            Person_ado extra1 = Person_ado.CreatePerson_ado(TestHelper.TestGuid2, "first 1", "last 1", 0, 1, true, true);

            extra1.PersonStatus = 1;
            extra1.OpenId       = "this is another openid";
            extra1.PhoneNumber  = "7uhkj,";
            extra1.EmailAddress = "*****@*****.**";
            LoadAdoObjects((IbaUnitTestEntities iba) =>
            {
                iba.AddToPerson_ado(extra1);
            });
            personList.Add(extra1);

            Person_ado extra2 = Person_ado.CreatePerson_ado(TestHelper.TestGuid3, "first 2", "last 2", 0, 1, true, true);

            extra2.PersonStatus = 2;
            extra2.OpenId       = "this is an openid";
            extra2.PhoneNumber  = "12346677888";
            extra2.EmailAddress = "*****@*****.**";
            LoadAdoObjects((IbaUnitTestEntities iba) =>
            {
                iba.AddToPerson_ado(extra2);
            });
            personList.Add(extra2);

            return(personList);
        }
        public void t_Person_Select_ByGuid()
        {
            Person_ado personAdo = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                personAdo = Person_ado.CreatePerson_ado(TestHelper.TestGuid1, "First Name", "Last Name", 1, 2, true, true);
                personAdo.EmailAddress   = "asdf@adfasd";
                personAdo.PhoneNumber    = "(651) 646-8007";
                personAdo.Address1       = "address1";
                personAdo.Address2       = "asddress 2";
                personAdo.City           = "city";
                personAdo.Country        = "cou    ";
                personAdo.HasBeenTrained = true;
                personAdo.HasClipboard   = true;
                personAdo.OpenId         = "httP;//www.googl.ecom/asdf.adsfae";
                personAdo.PersonRole     = 1;
                personAdo.PersonStatus   = 2;
                personAdo.State          = "TX";
                personAdo.ZipCode        = "55555";

                iba.AddToPerson_ado(personAdo);
            });
            List <Person_ado> extraList = DbTestHelper.LoadExtraneousPersons();

            // Exercise the test
            Person Person = PersonMapper.Select(personAdo.PersonId);

            validateResults(personAdo, Person);
        }
 /// <summary>
 /// Loads a single person into the database.
 /// </summary>
 /// <param name="firstName">The first name.</param>
 /// <param name="lastName">The last name.</param>
 /// <param name="id">The id.</param>
 public static void LoadSinglePerson(string firstName, string lastName, Guid id)
 {
     LoadAdoObjects((IbaUnitTestEntities iba) =>
     {
         Person_ado person = Person_ado.CreatePerson_ado(id, firstName, lastName, 0, 1, true, true);
         iba.Person_ado.AddObject(person);
         iba.SaveChanges();
     });
 }
 private static void validateExtrapersonAdos(List <Person_ado> extraList, IQueryable <Person_ado> PersonQuery)
 {
     foreach (Person_ado extra in extraList)
     {
         Person_ado adoPerson = PersonQuery.First(x => x.PersonId == extra.PersonId);
         Assert.IsNotNull(adoPerson, "There is no longer an object with id " + extra.PersonId.ToString());
         Assert.AreEqual(extra.EmailAddress, adoPerson.EmailAddress, "EmailAddress for " + extra.PersonId.ToString());
         Assert.AreEqual(extra.FirstName, adoPerson.FirstName, "FirstName for " + extra.PersonId.ToString());
         Assert.AreEqual(extra.LastName, adoPerson.LastName, "LastName for " + extra.PersonId.ToString());
         Assert.AreEqual(extra.OpenId, adoPerson.OpenId, "OpenId for " + extra.PersonId.ToString());
         Assert.AreEqual(extra.PhoneNumber, adoPerson.PhoneNumber, "PhoneNumber for " + extra.PersonId.ToString());
         Assert.AreEqual(extra.Address1, adoPerson.Address1, "Address1 for " + extra.PersonStatus.ToString());
         Assert.AreEqual(extra.Address2, adoPerson.Address2, "Address2 for " + extra.PersonStatus.ToString());
         Assert.AreEqual(extra.City, adoPerson.City, "City for " + extra.PersonStatus.ToString());
     }
 }
 private static void validateObjectEquality(Person Person, Person_ado adoPerson)
 {
     Assert.IsNotNull(adoPerson, "There is not Person with the ID to test for");
     Assert.AreEqual(Person.FirstName, adoPerson.FirstName, "FirstName");
     Assert.AreEqual(Person.LastName, adoPerson.LastName, "LastName");
     Assert.AreEqual(Person.EmailAddress, adoPerson.EmailAddress, "EmailAddress");
     Assert.AreEqual(Person.Id, adoPerson.PersonId, "Id");
     Assert.AreEqual(Person.PhoneNumber, adoPerson.PhoneNumber, "PhoneNumber");
     Assert.AreEqual(Person.Address1, adoPerson.Address1, "Address1");
     Assert.AreEqual(Person.Address2, adoPerson.Address2, "Address2");
     Assert.AreEqual(Person.City, adoPerson.City, "City");
     Assert.AreEqual(Person.Country, adoPerson.Country, "Country");
     Assert.AreEqual(Person.HasBeenTrained, adoPerson.HasBeenTrained, "HasBeenTrained");
     Assert.AreEqual(Person.HasClipboard, adoPerson.HasClipboard, "HasClipboard");
     Assert.AreEqual(Person.OpenId, adoPerson.OpenId, "OpenId");
     Assert.AreEqual((short)Person.PersonRole, adoPerson.PersonRole, "PersonRole");
     Assert.AreEqual((short)Person.PersonStatus, adoPerson.PersonStatus, "PersonStatus");
     Assert.AreEqual(Person.State, adoPerson.State, "State");
     Assert.AreEqual(Person.ZipCode, adoPerson.ZipCode, "ZipCode");
 }
 private static void validateResults(Person_ado personAdo, Person Person)
 {
     Assert.AreEqual(personAdo.EmailAddress, Person.EmailAddress, "EmailAddress");
     Assert.AreEqual(personAdo.FirstName, Person.FirstName, "FirstName");
     Assert.AreEqual(personAdo.PersonId, Person.Id, "Id");
     Assert.AreEqual(personAdo.LastName, Person.LastName, "LastName");
     Assert.AreEqual(personAdo.OpenId, Person.OpenId, "OpenId");
     Assert.AreEqual(personAdo.PhoneNumber, Person.PhoneNumber, "PhoneNumber");
     Assert.AreEqual(personAdo.Address1, Person.Address1, "Address1");
     Assert.AreEqual(personAdo.Address2, Person.Address2, "Address2");
     Assert.AreEqual(personAdo.City, Person.City, "City");
     Assert.AreEqual(personAdo.Country, Person.Country, "Country");
     Assert.AreEqual(personAdo.HasBeenTrained, Person.HasBeenTrained, "HasBeenTrained");
     Assert.AreEqual(personAdo.HasClipboard, Person.HasClipboard, "HasClipboard");
     Assert.AreEqual(personAdo.OpenId, Person.OpenId, "OpenID");
     Assert.AreEqual(personAdo.PersonRole, (short)Person.PersonRole, "PersonRole");
     Assert.AreEqual(personAdo.PersonStatus, (short)Person.PersonStatus, "PersonStatus");
     Assert.AreEqual(personAdo.State, Person.State, "State");
     Assert.AreEqual(personAdo.ZipCode, Person.ZipCode, "ZipCode");
 }
        public void t_Person_Save_Insert()
        {
            Person Person = new Person()
            {
                Id           = TestHelper.TestGuid1,
                FirstName    = "First Name",
                LastName     = "Last Name",
                EmailAddress = "asdf@adfasd",
                PhoneNumber  = "(651) 646-8007"
            };

            PersonMapper.Insert(Person);


            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var PersonQuery = from Persons in iba.Person_ado select Persons;
                Assert.IsNotNull(PersonQuery, "Query result is null");
                Assert.AreEqual(1, PersonQuery.Count(), "Wrong number of results in query");
                Person_ado adoPerson = PersonQuery.First();
                validateObjectEquality(Person, adoPerson);
            }
        }
        public void t_Person_Save_Update()
        {
            Person_ado personAdo = null;

            // backdoor data setup
            DbTestHelper.LoadAdoObjects(delegate(IbaUnitTestEntities iba)
            {
                personAdo = Person_ado.CreatePerson_ado(TestHelper.TestGuid1, "First Name", "Last Name", 0, 0, true, true);
                personAdo.EmailAddress   = "asdf@adfasd";
                personAdo.PhoneNumber    = "(651) 646-8007";
                personAdo.Address1       = "address1";
                personAdo.Address2       = "asddress 2";
                personAdo.City           = "city";
                personAdo.Country        = "cou    ";
                personAdo.HasBeenTrained = true;
                personAdo.HasClipboard   = true;
                personAdo.OpenId         = "httP;//www.googl.ecom/asdf.adsfae";
                personAdo.PersonRole     = 1;
                personAdo.PersonStatus   = 2;
                personAdo.State          = "TX";
                personAdo.ZipCode        = "55555";

                iba.AddToPerson_ado(personAdo);
            });
            List <Person_ado> extraList = DbTestHelper.LoadExtraneousPersons();

            // Setup object to be saved. Change everything except the Id.
            Person Person = new Person()
            {
                Id             = TestHelper.TestGuid1,
                FirstName      = "First Name 2",
                LastName       = "Last Nam 2e",
                EmailAddress   = "asdf@adfasd 2",
                PhoneNumber    = "(651) 646-8888",
                Address1       = "address1",
                Address2       = "asddress 2",
                City           = "city",
                Country        = "cou    ",
                HasBeenTrained = true,
                HasClipboard   = true,
                OpenId         = "httP;//www.googl.ecom/asdf.adsfae",
                PersonRole     = Role.Administrator,
                PersonStatus   = Status.Active,
                State          = "TX",
                ZipCode        = "55555"
            };

            // Execute the test
            PersonMapper.Update(Person);

            // Validate results
            using (IbaUnitTestEntities iba = new IbaUnitTestEntities())
            {
                var PersonQuery = from Persons in iba.Person_ado select Persons;
                Assert.IsNotNull(PersonQuery, "Query result is null");
                Assert.AreEqual(extraList.Count() + 1, PersonQuery.Count(), "Wrong number of results in query");
                Person_ado adoPerson = PersonQuery.First(x => x.PersonId == TestHelper.TestGuid1);
                validateObjectEquality(Person, adoPerson);

                validateExtrapersonAdos(extraList, PersonQuery);
            }
        }