public async Task DeleteByIdAsync_ShouldSuccessfullyDelete()
        {
            MapperInitializer.InitializeMapper();
            var context = ApplicationDbContextInMemoryFactory.InitializeContext();

            await this.SeedDataAsync(context);

            var asphaltBaseService            = new AsphaltBaseService(context);
            var deleteAsphaltBaseServiceModel = new DeleteAsphaltBaseServiceModel();

            deleteAsphaltBaseServiceModel.Id = 1;

            await asphaltBaseService.DeleteByIdAsync(deleteAsphaltBaseServiceModel.Id);

            var expectedResult = 1;
            var actualResult   = asphaltBaseService
                                 .All()
                                 .Count();
            var expectedResult2 = "ABN 2";
            var actualResult2   = asphaltBaseService
                                  .All()
                                  .First()
                                  .Name;

            Assert.True(expectedResult == actualResult);
            Assert.True(expectedResult2 == actualResult2);
        }
        public async Task DeleteByIdAsync_WithNonExistingIdShouldThrowArgumentNullException()
        {
            MapperInitializer.InitializeMapper();
            var context = ApplicationDbContextInMemoryFactory.InitializeContext();

            await this.SeedDataAsync(context);

            var asphaltBaseService            = new AsphaltBaseService(context);
            var deleteAsphaltBaseServiceModel = new DeleteAsphaltBaseServiceModel();

            deleteAsphaltBaseServiceModel.Id = 3;

            await Assert.ThrowsAsync <ArgumentNullException>(async() =>
            {
                await asphaltBaseService.DeleteByIdAsync(deleteAsphaltBaseServiceModel.Id);
            });
        }