public void MustBeCurrentVersion_PreviousVersion_ReturnsError() { _context.Setup(x => x.HttpContext).Returns(Creator.GetContext()); var validator = new SolutionsValidator(_context.Object, _logger.Object, _solutionDatastore.Object, _organisationDatastore.Object, _env.Object); var soln = Creator.GetSolution(); _solutionDatastore.Setup(x => x.ByOrganisation(soln.OrganisationId)).Returns(new[] { Creator.GetSolution(previousId: soln.Id) }); validator.MustBeCurrentVersion(); var valres = validator.Validate(soln); valres.Errors.Should() .ContainSingle(x => x.ErrorMessage == "Can only change current version") .And .HaveCount(1); }
public void MustBeCurrentVersion_Current_Succeeds() { var solnId = Guid.NewGuid().ToString(); _context.Setup(x => x.HttpContext).Returns(Creator.GetContext()); var validator = new SolutionsValidator(_context.Object, _logger.Object, _solutionDatastore.Object, _organisationDatastore.Object, _env.Object); var oldSoln = Creator.GetSolution(id: solnId); var newSoln = Creator.GetSolution(id: solnId); _solutionDatastore.Setup(x => x.ByOrganisation(newSoln.OrganisationId)).Returns(new[] { oldSoln }); validator.MustBeCurrentVersion(); var valres = validator.Validate(newSoln); valres.Errors.Should().BeEmpty(); }