public void TearDownRelatedData()
		{
			ItemHoursRepository repository = new ItemHoursRepository(ConfigSettings.MySqlDatabaseConnectionName);
			repository.ClearCollection();

			CostCentreRepository costCentreRepository = new CostCentreRepository(ConfigSettings.MySqlDatabaseConnectionName);
			costCentreRepository.ClearCollection();

			HourTypeRepository hourTypeRepository = new HourTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			hourTypeRepository.ClearCollection();
		}
		public void ShouldCreateItemHoursEntry()
		{
			// Arrange
			ItemHoursRepository repository = new ItemHoursRepository(ConfigSettings.MySqlDatabaseConnectionName);
			ItemHoursEntity entity = HoursData.GetItemHoursEntryForInsert(_hourType, _costCentre);
			// Act
			entity = repository.Create(entity);

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

			CostCentreRepository costCentreRepository = new CostCentreRepository(ConfigSettings.MySqlDatabaseConnectionName);
			CostCentreEntity costCentreEntity = HoursData.GetCostCentreForInsert();
			costCentreRepository.ClearCollection();
			_costCentre = costCentreRepository.Create(costCentreEntity);

			HourTypeRepository hourTypeRepository = new HourTypeRepository(ConfigSettings.MySqlDatabaseConnectionName);
			HourTypeEntity hourTypeEntity = HoursData.GetHourTypeForInsert();
			hourTypeRepository.ClearCollection();
			_hourType = hourTypeRepository.Create(hourTypeEntity);
		}
		public void ShouldReadItemHoursEntryWithId()
		{
			// Arrange
			ItemHoursRepository repository = new ItemHoursRepository(ConfigSettings.MySqlDatabaseConnectionName);
			ItemHoursEntity entity = HoursData.GetItemHoursEntryForInsert(_hourType,_costCentre);

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

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

			// Assert
			Assert.AreEqual(entity.OrderNumber, actual.OrderNumber);
		}
		public void ShouldCreateItemHoursEntries()
		{
			// Arrange
			ItemHoursRepository repository = new ItemHoursRepository(ConfigSettings.MySqlDatabaseConnectionName);
			List<ItemHoursEntity> entities = HoursData.GetItemHoursEntriesForInsert(_hourType, _costCentre);

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

			// Assert
			Assert.IsNotNull(entities);
			Assert.AreEqual(2, entities.Count);
		}
		public void ShouldDeleteItemHoursEntry()
		{
			// Arrange
			ItemHoursRepository repository = new ItemHoursRepository(ConfigSettings.MySqlDatabaseConnectionName);
			ItemHoursEntity entity = HoursData.GetItemHoursEntryForInsert(_hourType,_costCentre);
			entity = repository.Create(entity);

			// Act
			ItemHoursEntity actual = repository.Delete(entity);

			// Assert
			Assert.AreNotEqual(actual.DeletedDate, DateTime.MinValue);
		}