public async Task When_ResourceSet_Cannot_Be_Updated_Then_Returns_False()
        {
            const string id = "id";
            var          udpateResourceSetParameter = new ResourceSet
            {
                Id     = id,
                Name   = "blah",
                Scopes = new[] { "scope" }
            };
            var resourceSet = new Shared.Models.ResourceSet {
                Id = id
            };

            _resourceSetRepositoryStub.Setup(r => r.Get(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(resourceSet);
            _resourceSetRepositoryStub.Setup(r => r.Update(It.IsAny <ResourceSet>(), It.IsAny <CancellationToken>()))
            .Returns(() => Task.FromResult <Option>(new Option.Error(new ErrorDetails())));

            var result = await _updateResourceSetAction.Execute(udpateResourceSetParameter, CancellationToken.None).ConfigureAwait(false);

            Assert.IsType <Option.Error>(result);
        }
        public async Task When_A_ResourceSet_Is_Updated_Then_True_Is_Returned()
        {
            const string id = "id";
            var          udpateResourceSetParameter = new ResourceSet
            {
                Id     = id,
                Name   = "blah",
                Scopes = new[] { "scope" }
            };
            var resourceSet = new Shared.Models.ResourceSet {
                Id = id
            };

            _resourceSetRepositoryStub.Setup(r => r.Get(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(resourceSet);
            _resourceSetRepositoryStub.Setup(r => r.Update(It.IsAny <Shared.Models.ResourceSet>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(new Option.Success());

            var result = await _updateResourceSetAction.Execute(udpateResourceSetParameter, CancellationToken.None)
                         .ConfigureAwait(false);

            Assert.IsType <Option.Success>(result);
        }