public void Constructor_ShouldSetProperties() { var dut = new StartPreservationCommand(new List <int> { 17 }); Assert.AreEqual(1, dut.TagIds.Count()); Assert.AreEqual(17, dut.TagIds.First()); }
public void Validate_ShouldFail_WhenNoTagsGiven() { var command = new StartPreservationCommand(new List <int>()); var result = _dut.Validate(command); Assert.IsFalse(result.IsValid); Assert.AreEqual(1, result.Errors.Count); Assert.IsTrue(result.Errors[0].ErrorMessage.StartsWith("At least 1 tag must be given!")); }
public void Validate_ShouldFail_WhenTagsNotUnique() { var command = new StartPreservationCommand(new List <int> { 1, 1 }); var result = _dut.Validate(command); Assert.IsFalse(result.IsValid); Assert.AreEqual(1, result.Errors.Count); Assert.IsTrue(result.Errors[0].ErrorMessage.StartsWith("Tags must be unique!")); }
public void Setup_OkState() { _tagIds = new List <int> { TagId1, TagId2 }; _projectValidatorMock = new Mock <IProjectValidator>(); _projectValidatorMock.Setup(p => p.AllTagsInSameProjectAsync(_tagIds, default)).Returns(Task.FromResult(true)); _tagValidatorMock = new Mock <ITagValidator>(); _tagValidatorMock.Setup(r => r.ExistsAsync(TagId1, default)).Returns(Task.FromResult(true)); _tagValidatorMock.Setup(r => r.ExistsAsync(TagId2, default)).Returns(Task.FromResult(true)); _tagValidatorMock.Setup(r => r.IsReadyToBeStartedAsync(TagId1, default)).Returns(Task.FromResult(true)); _tagValidatorMock.Setup(r => r.IsReadyToBeStartedAsync(TagId2, default)).Returns(Task.FromResult(true)); _tagValidatorMock.Setup(r => r.HasANonVoidedRequirementAsync(TagId1, default)).Returns(Task.FromResult(true)); _tagValidatorMock.Setup(r => r.HasANonVoidedRequirementAsync(TagId2, default)).Returns(Task.FromResult(true)); _command = new StartPreservationCommand(_tagIds); _dut = new StartPreservationCommandValidator(_projectValidatorMock.Object, _tagValidatorMock.Object); }
public void Setup() { var stepMock = new Mock <Step>(); stepMock.SetupGet(s => s.Plant).Returns(TestPlant); _rd1Mock = new Mock <RequirementDefinition>(); _rd1Mock.SetupGet(rd => rd.Id).Returns(_rdId1); _rd1Mock.SetupGet(rd => rd.Plant).Returns(TestPlant); _rd2Mock = new Mock <RequirementDefinition>(); _rd2Mock.SetupGet(rd => rd.Id).Returns(_rdId2); _rd2Mock.SetupGet(rd => rd.Plant).Returns(TestPlant); _req1OnTag1 = new TagRequirement(TestPlant, _intervalWeeks, _rd1Mock.Object); _req2OnTag1 = new TagRequirement(TestPlant, _intervalWeeks, _rd2Mock.Object); _req1OnTag2 = new TagRequirement(TestPlant, _intervalWeeks, _rd1Mock.Object); _req2OnTag2 = new TagRequirement(TestPlant, _intervalWeeks, _rd2Mock.Object); _tag1 = new Tag(TestPlant, TagType.Standard, "", "", stepMock.Object, new List <TagRequirement> { _req1OnTag1, _req2OnTag1 }); _tag2 = new Tag(TestPlant, TagType.Standard, "", "", stepMock.Object, new List <TagRequirement> { _req1OnTag2, _req2OnTag2 }); var tags = new List <Tag> { _tag1, _tag2 }; var tagIds = new List <int> { _tagId1, _tagId2 }; _projectRepoMock = new Mock <IProjectRepository>(); _projectRepoMock.Setup(r => r.GetTagsByTagIdsAsync(tagIds)).Returns(Task.FromResult(tags)); _command = new StartPreservationCommand(tagIds); _dut = new StartPreservationCommandHandler(_projectRepoMock.Object, UnitOfWorkMock.Object); }