public And_Error_Occurs()
        {
            MockMediatr
                =
                    Substitute.For <IMediator>();

            SUT
                =
                    new PensionsRegulatorController(
                        MockMediatr,
                        Substitute.For <ILogger <PensionsRegulatorController> >());


            MockMediatr
            .Send(
                Arg.Is <GetOrganisationsByPayeRefAndAorn>(
                    request =>
                    request.AccountOfficeReferenceNumber.Equals(
                        Aorn,
                        StringComparison.Ordinal) &&
                    request.PAYEReference.Equals(
                        PayeRef,
                        StringComparison.Ordinal)))
            .Throws(
                new TestException(_exceptionMessage));
        }
        public And_No_Data_For_Request()
        {
            MockMediatr
                =
                    Substitute.For <IMediator>();

            SUT
                =
                    new PensionsRegulatorController(
                        MockMediatr,
                        Substitute.For <ILogger <PensionsRegulatorController> >());


            MockMediatr
            .Send(
                Arg.Is <GetOrganisationsByPayeRefAndAorn>(
                    request =>
                    request.AccountOfficeReferenceNumber.Equals(
                        Aorn,
                        StringComparison.Ordinal) &&
                    request.PAYEReference.Equals(
                        PayeRef,
                        StringComparison.Ordinal)))
            .Returns(
                Enumerable.Empty <Organisation>());
        }
        public Given_A_PensionsRegulatorController()
        {
            MockMediatr
                =
                    Substitute.For <IMediator>();

            SUT
                =
                    new PensionsRegulatorController(
                        MockMediatr,
                        Substitute.For <ILogger <PensionsRegulatorController> >());

            ExpectedOrganisations =
                new Fixture()
                .CreateMany <Organisation>(
                    new Random()
                    .Next(1, 15));

            MockMediatr
            .Send(
                Arg.Is <GetOrganisationsByPayeRefAndAorn>(
                    request =>
                    request.AccountOfficeReferenceNumber.Equals(
                        Aorn,
                        StringComparison.Ordinal) &&
                    request.PAYEReference.Equals(
                        PayeRef,
                        StringComparison.Ordinal)))
            .Returns(
                ExpectedOrganisations);
        }