public void MustBeFromSameOrganisationOrAdmin_Same_Succeeds()
        {
            var orgId = Guid.NewGuid().ToString();

            _context.Setup(x => x.HttpContext).Returns(Creator.GetContext(orgId: orgId, role: Roles.Supplier));
            var validator = new SolutionsValidator(_context.Object, _logger.Object, _solutionDatastore.Object, _organisationDatastore.Object, _env.Object);
            var soln      = Creator.GetSolution(orgId: orgId);

            validator.MustBeFromSameOrganisationOrAdmin();
            var valres = validator.Validate(soln);

            valres.Errors.Should().BeEmpty();
        }
        public void MustBeFromSameOrganisationOrAdmin_Different_ReturnsError(
            [Values(
                 Roles.Buyer,
                 Roles.Supplier)]
            string role)
        {
            _context.Setup(x => x.HttpContext).Returns(Creator.GetContext(role: role));
            var validator = new SolutionsValidator(_context.Object, _logger.Object, _solutionDatastore.Object, _organisationDatastore.Object, _env.Object);
            var soln      = Creator.GetSolution();

            validator.MustBeFromSameOrganisationOrAdmin();
            var valres = validator.Validate(soln);

            valres.Errors.Should()
            .ContainSingle(x => x.ErrorMessage == "Must be from same organisation")
            .And
            .HaveCount(1);
        }