public async Task CreateAsyncReturnsTheRightId()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            var repository = new EfDeletableEntityRepository <AudioFile>(dbContext);
            var service    = new AudioFilesService(repository);

            var bookId = 5;

            var audio1 = new AudioFile
            {
                Title  = "Audio1",
                Url    = "sdsdffsdf1",
                BookId = bookId,
            };

            await repository.AddAsync(audio1);

            await repository.SaveChangesAsync();

            var expectedId = 2;
            var actualId   = await service.CreateAsync("Audio2", "asdsad2", bookId);

            Assert.Equal(expectedId, actualId);
        }
        public async Task CreateAsyncAddsThreeAudioFilesToBook()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            var repository = new EfDeletableEntityRepository <AudioFile>(dbContext);
            var service    = new AudioFilesService(repository);

            var bookId = 5;

            await service.CreateAsync("1", "asdafdsfadfsdf1", bookId);

            await service.CreateAsync("2", "asdafdsfadfsdf2", bookId);

            await service.CreateAsync("3", "asdafdsfadfsdf3", bookId);

            var expectedCount = 3;
            var actualCount   = repository.All().Count();

            Assert.Equal(expectedCount, actualCount);
        }