public async Task WillThrowWhenCuratedPackageDoesNotExist()
            {
                var svc = new TestableCuratedFeedService();

                await Assert.ThrowsAsync <InvalidOperationException>(
                    async() => await svc.DeleteCuratedPackageAsync(
                        0,
                        1066));
            }
            public async Task WillDeleteTheCuratedPackage()
            {
                var svc = new TestableCuratedFeedService();

                await svc.DeleteCuratedPackageAsync(
                    0,
                    1066);

                svc.StubCuratedPackageRepository.Verify(stub => stub.DeleteOnCommit(svc.StubCuratedPackage));
                svc.StubCuratedPackageRepository.Verify(stub => stub.CommitChangesAsync());
            }
            public async Task WillDeleteTheCuratedPackage()
            {
                var svc = new TestableCuratedFeedService();

                await svc.DeleteCuratedPackageAsync(
                    0,
                    1066);

                svc.StubCuratedPackageRepository.Verify(stub => stub.DeleteOnCommit(svc.StubCuratedPackage));
                svc.StubCuratedPackageRepository.Verify(stub => stub.CommitChangesAsync());
            }
            public async Task WillThrowWhenCuratedPackageDoesNotExist()
            {
                var svc = new TestableCuratedFeedService();

                await Assert.ThrowsAsync<InvalidOperationException>(
                    async () => await svc.DeleteCuratedPackageAsync(
                        0,
                        1066));
            }