<TestClass()> _
Public Class FamilyMapperTest
' Because we need to alter the dates in the repositories from time to time, we can't use injection here
' How can this be improved?
Dim myCountryRepository As ICountryRepository = MemoryKernel.Instance.Get(Of ICountryRepository)()
Dim myLocalisationAndUnopsProjectRepository As MemoryLocalisationAndUnopsProjectRepository = MemoryKernel.Instance.Get(Of MemoryLocalisationAndUnopsProjectRepository)()
Dim myMemoryCategoryRepository As MemoryCategoryRepository = MemoryKernel.Instance.Get(Of MemoryCategoryRepository)()
Dim myCountryMapper As CountryMapper = New CountryMapper(myCountryRepository)
Dim myLocalisationMapper As LocalisationMapper = New LocalisationMapper(myLocalisationAndUnopsProjectRepository, myLocalisationAndUnopsProjectRepository)
Dim myCategoryMapper As CategoryMapper = New CategoryMapper(myMemoryCategoryRepository)
Dim myFamilyMapper As FamilyMapper = New FamilyMapper(myCountryMapper, myLocalisationMapper, myCategoryMapper)
' This entire block could be replaced by
' Dim myFamilyMapper As FamilyMapper = MemoryKernel.Get(Of FamilyMapper)
<TestMethod()> _
Public Sub GetCategoryStartDate_CategoryStartDateAndContractStartDate_ContractStartDateIsOldestDate()
' Set a property on myMemoryCategoryRepository
' Assert the outcome of myFamilyMapper based on the property I just set in the repository
End Sub
end Class