public static AddressTypeEntity CreateAddressType()
		{
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressTypeEntity entity = AddressTypeData.GetItemForInsert();
			//repository.ClearCollection();

			entity = repository.Create(entity);

			return entity;
		}
		public void ShouldCreateAddresses()
		{
			// Arrange
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			List<AddressTypeEntity> entities = AddressTypeData.GetItemsForInsert();
			repository.ClearCollection();

			// Act
			entities = repository.Create(entities);

			// Assert
			Assert.IsNotNull(entities);
			Assert.AreEqual(2, entities.Count);
		}
		public void ShouldCreateAddress()
		{
			// Arrange
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressTypeEntity entity = AddressTypeData.GetItemForInsert();
			repository.ClearCollection();

			// Act
			entity = repository.Create(entity);

			// Assert
			Assert.IsNotNull(entity);
			Assert.AreNotEqual(0, entity.Id);
		}
		public void ShouldThrowArgumentNullExceptionOnConstructor()
		{
			// Act
			try
			{
				AddressTypeRepository repository = new AddressTypeRepository(null);
				Assert.Fail("This should not happen");
			}
			catch (Exception ex)
			{
				// Arrange
				Assert.IsInstanceOf<ArgumentNullException>(ex);
			}
		}
		public void ShouldReadAddressWithId()
		{
			// Arrange
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressTypeEntity entity = AddressTypeData.GetItemForInsert();
			repository.ClearCollection();

			// Act
			entity = repository.Create(entity);

			// Act
			var actual = repository.Read(entity.Id);

			// Assert
			Assert.AreEqual(entity.Description, actual.Description);
		}
		private static void ClearAll()
		{
			PersonRepository repository1 = new PersonRepository(ConfigSettings.MySqlDatabaseConnectionName);
			ContactRepository repository2 = new ContactRepository(ConfigSettings.MySqlDatabaseConnectionName);
			EntityRepository repository3 = new EntityRepository(ConfigSettings.MySqlDatabaseConnectionName);
			OccupationNameRepository repository4 = new OccupationNameRepository(ConfigSettings.MySqlDatabaseConnectionName);
			EntityTypeRepository repository5 = new EntityTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			ContactTypeRepository repository6 = new ContactTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			TitleRepository repository7 = new TitleRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressTypeRepository repository8 = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressRepository repository9 = new AddressRepository(ConfigSettings.MySqlDatabaseConnectionName);
			GenderTypeRepository repository10 = new GenderTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);

			repository9.ClearCollection();
			repository1.ClearCollection();
			repository2.ClearCollection();
			repository3.ClearCollection();
			repository4.ClearCollection();
			repository5.ClearCollection();
			repository6.ClearCollection();
			repository7.ClearCollection();
			repository8.ClearCollection();
			repository10.ClearCollection();
		}
		private static void CreateAddressTypes()
		{
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);

			AddressTypeEntity entity = new AddressTypeEntity()
			{
				Description = "Home",
				DeletedDate = DateTime.MinValue
			};

			AddressTypeEntity mEntity = new AddressTypeEntity()
			{
				Description = "Work",
				DeletedDate = DateTime.MinValue
			};


			AddressTypeEntity entity3 = new AddressTypeEntity()
			{
				Description = "Postal",
				DeletedDate = DateTime.MinValue
			};

			entity = repository.Create(entity);
			mEntity = repository.Create(mEntity);
			entity3 = repository.Create(entity3);

			_addressTypeEntities.Add(entity);
			_addressTypeEntities.Add(mEntity);
			_addressTypeEntities.Add(entity3);
		}
		public static void ClearAddressType()
		{
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			repository.ClearCollection();
		}
		public void ShouldUpdateAddress()
		{
			// Arrange
			AddressTypeRepository repository = new AddressTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			AddressTypeEntity entity = AddressTypeData.GetItemForInsert();
			repository.ClearCollection();
			entity = repository.Create(entity);
			entity.Description = "Postal";

			// Act
			AddressTypeEntity actual = repository.Update(entity);

			// Assert
			Assert.AreEqual(entity.Description, actual.Description);
		}