public async Task Save_Should_Write_To_File()
        {
            var tempFile   = GetTemporaryFile();
            var repository = new CatDataRepository(new Settings(tempFile));

            await repository.SaveAsync(Cats);

            var contents = File.ReadAllText(tempFile);

            contents.Should().Contain($"\"Name\":\"{Cats.FirstOrDefault().Name}\"");

            File.Delete(tempFile);
        }
 public void Save_Should_Throw_General_Exception()
 {
     Assert.ThrowsAsync <ArgumentNullException>(() => CatDataRepository.SaveAsync(Cats));
 }