public async void WhenUserIsAuthorised_ShouldGetProducerRegistrations()
        {
            var request = new IsProducerRegisteredForComplianceYear("ABC12345", 2016);

            await IsProducerRegisteredForComplianceYearHandler().HandleAsync(request);

            A.CallTo(() => registeredProducerDataAccess.GetProducerRegistrations(request.RegistrationNumber, request.ComplianceYear))
            .MustHaveHappened(Repeated.Exactly.Once);
        }
        public async void WhenUserIsAuthorised_ShouldGetProducerRegistrations()
        {
            var request = new IsProducerRegisteredForComplianceYear("ABC12345", 2016);

            await IsProducerRegisteredForComplianceYearHandler().HandleAsync(request);

            A.CallTo(() => registeredProducerDataAccess.GetProducerRegistrations(request.RegistrationNumber, request.ComplianceYear))
                .MustHaveHappened(Repeated.Exactly.Once);
        }
        public async void WhenUserIsUnauthorised_ShouldNotGetProducerRegistrations()
        {
            A.CallTo(() => weeeAuthorization.EnsureCanAccessInternalArea())
            .Throws <SecurityException>();

            var request = new IsProducerRegisteredForComplianceYear("ABC12345", 2016);

            await Assert.ThrowsAsync <SecurityException>(() => IsProducerRegisteredForComplianceYearHandler().HandleAsync(request));

            A.CallTo(() => registeredProducerDataAccess.GetProducerRegistration(A <Guid> ._))
            .MustNotHaveHappened();
        }
        public async void WhenUserIsUnauthorised_ShouldNotGetProducerRegistrations()
        {
            A.CallTo(() => weeeAuthorization.EnsureCanAccessInternalArea())
                .Throws<SecurityException>();

            var request = new IsProducerRegisteredForComplianceYear("ABC12345", 2016);

            await Assert.ThrowsAsync<SecurityException>(() => IsProducerRegisteredForComplianceYearHandler().HandleAsync(request));

            A.CallTo(() => registeredProducerDataAccess.GetProducerRegistration(A<Guid>._))
                .MustNotHaveHappened();
        }