private void MockMainApiDataForTag(string tagNo) { var mainTagDetails = new PCSTagDetails { AreaCode = "ACode", AreaDescription = "ADesc", CallOffNo = "CalloffNo", CommPkgNo = "CommPkgNo", Description = $"{tagNo}Description", DisciplineCode = "DCode", DisciplineDescription = "DDesc", McPkgNo = "McPkgNo", PurchaseOrderNo = "PurchaseOrderNo", TagFunctionCode = "TFCode", TagNo = tagNo }; IList <PCSTagDetails> mainTagDetailList = new List <PCSTagDetails> { mainTagDetails }; TestFactory.Instance .TagApiServiceMock .Setup(service => service.GetTagDetailsAsync( TestFactory.PlantWithAccess, TestFactory.ProjectWithAccess, new List <string> { tagNo })) .Returns(Task.FromResult(mainTagDetailList)); }
private Tag CreateTag( AutoScopeTagsCommand request, Step step, PCSTagDetails tagDetails, TagFunction tagFunctionWithRequirements, IList <RequirementDefinition> reqDefs) { var requirements = new List <TagRequirement>(); foreach (var requirement in tagFunctionWithRequirements.Requirements.Where(r => !r.IsVoided)) { var reqDef = reqDefs.Single(rd => rd.Id == requirement.RequirementDefinitionId); requirements.Add(new TagRequirement(_plantProvider.Plant, requirement.IntervalWeeks, reqDef)); } var tag = new Tag( _plantProvider.Plant, TagType.Standard, tagDetails.TagNo, tagDetails.Description, step, requirements) { Calloff = tagDetails.CallOffNo, CommPkgNo = tagDetails.CommPkgNo, McPkgNo = tagDetails.McPkgNo, PurchaseOrderNo = tagDetails.PurchaseOrderNo, Remark = request.Remark, StorageArea = request.StorageArea, TagFunctionCode = tagDetails.TagFunctionCode }; tag.SetArea(tagDetails.AreaCode, tagDetails.AreaDescription); tag.SetDiscipline(tagDetails.DisciplineCode, tagDetails.DisciplineDescription); return(tag); }
private string Key(PCSTagDetails details) => $"{details.TagFunctionCode}|{details.RegisterCode}";
public void Setup() { // Arrange var tagFunctionCode1 = "TagFunctionCode1"; var registerCode1 = "RegisterCodeCode1"; var tagFunctionCode2 = "TagFunctionCode2"; var registerCode2 = "RegisterCodeCode2"; _modeRepositoryMock = new Mock <IModeRepository>(); _modeMock = new Mock <Mode>(); _modeMock.SetupGet(m => m.Plant).Returns(TestPlant); _modeMock.SetupGet(x => x.Id).Returns(ModeId); _modeRepositoryMock .Setup(r => r.GetByIdAsync(ModeId)) .Returns(Task.FromResult(_modeMock.Object)); // Arrange step = new Step(TestPlant, "S", _modeMock.Object, new Responsible(TestPlant, "RC", "RD")); step.SetProtectedIdForTesting(StepId); _journeyRepositoryMock = new Mock <IJourneyRepository>(); _journeyRepositoryMock .Setup(x => x.GetStepByStepIdAsync(StepId)) .Returns(Task.FromResult(step)); _projectRepositoryMock = new Mock <IProjectRepository>(); _projectRepositoryMock .Setup(x => x.Add(It.IsAny <Project>())) .Callback <Project>(project => { _projectAddedToRepository = project; }); _rtRepositoryMock = new Mock <IRequirementTypeRepository>(); var rdMock1 = new Mock <RequirementDefinition>(); rdMock1.SetupGet(x => x.Id).Returns(ReqDefId1); rdMock1.SetupGet(x => x.Plant).Returns(TestPlant); var rdMock2a = new Mock <RequirementDefinition>(); rdMock2a.SetupGet(x => x.Id).Returns(ReqDefId2a); rdMock2a.SetupGet(x => x.Plant).Returns(TestPlant); var rdMock2b = new Mock <RequirementDefinition>(); rdMock2b.SetupGet(x => x.Id).Returns(ReqDefId2b); rdMock2b.SetupGet(x => x.Plant).Returns(TestPlant); _rtRepositoryMock .Setup(r => r.GetRequirementDefinitionsByIdsAsync(new List <int> { ReqDefId1, ReqDefId2a })) .Returns(Task.FromResult(new List <RequirementDefinition> { rdMock1.Object, rdMock2a.Object })); var tf1 = new TagFunction(TestPlant, tagFunctionCode1, "TF1", registerCode1); tf1.AddRequirement(new TagFunctionRequirement(TestPlant, Interval1, rdMock1.Object)); var tf2 = new TagFunction(TestPlant, tagFunctionCode2, "TF2", registerCode2); tf2.AddRequirement(new TagFunctionRequirement(TestPlant, Interval2, rdMock2a.Object)); var voidedTFRequirement = new TagFunctionRequirement(TestPlant, Interval2, rdMock2b.Object); voidedTFRequirement.IsVoided = true; tf2.AddRequirement(voidedTFRequirement); var rdMock3 = new Mock <RequirementDefinition>(); rdMock3.SetupGet(x => x.Id).Returns(ReqDefId3); rdMock3.SetupGet(x => x.Plant).Returns(TestPlant); var tf3 = new TagFunction(TestPlant, "TagFunctionCode3", "TF3", "RegisterCodeCode3"); tf3.AddRequirement(new TagFunctionRequirement(TestPlant, Interval1, rdMock1.Object)); tf3.AddRequirement(new TagFunctionRequirement(TestPlant, Interval2, rdMock2a.Object)); tf3.AddRequirement(new TagFunctionRequirement(TestPlant, 3, rdMock3.Object)); _tfRepositoryMock = new Mock <ITagFunctionRepository>(); _tfRepositoryMock .Setup(x => x.GetAllNonVoidedWithRequirementsAsync()) .Returns(Task.FromResult(new List <TagFunction> { tf1, tf2, tf3 })); _mainTagDetails1 = new PCSTagDetails { AreaCode = "AreaCode1", AreaDescription = "AreaDescription1", CallOffNo = "CalloffNo1", CommPkgNo = "CommPkgNo1", Description = "Description1", DisciplineCode = "DisciplineCode1", DisciplineDescription = "DisciplineDescription1", McPkgNo = "McPkgNo1", PurchaseOrderNo = "PurchaseOrderNo1", TagFunctionCode = tagFunctionCode1, RegisterCode = registerCode1, TagNo = TestTagNo1, ProjectDescription = TestProjectDescription }; _mainTagDetails2 = new PCSTagDetails { AreaCode = "AreaCode2", AreaDescription = "AreaDescription2", CallOffNo = "CalloffNo2", CommPkgNo = "CommPkgNo2", Description = "Description2", DisciplineCode = "DisciplineCode2", DisciplineDescription = "DisciplineDescription1", McPkgNo = "McPkgNo2", PurchaseOrderNo = "PurchaseOrderNo2", TagFunctionCode = tagFunctionCode2, RegisterCode = registerCode2, TagNo = TestTagNo2, ProjectDescription = TestProjectDescription }; IList <PCSTagDetails> mainTagDetailList = new List <PCSTagDetails> { _mainTagDetails1, _mainTagDetails2 }; _tagApiServiceMock = new Mock <ITagApiService>(); _tagApiServiceMock .Setup(x => x.GetTagDetailsAsync(TestPlant, TestProjectName, new List <string> { TestTagNo1, TestTagNo2 })) .Returns(Task.FromResult(mainTagDetailList)); _command = new AutoScopeTagsCommand( new List <string> { TestTagNo1, TestTagNo2 }, TestProjectName, step.Id, "Remark", "SA"); _dut = new AutoScopeTagsCommandHandler( _projectRepositoryMock.Object, _journeyRepositoryMock.Object, _modeRepositoryMock.Object, _tfRepositoryMock.Object, _rtRepositoryMock.Object, UnitOfWorkMock.Object, PlantProviderMock.Object, _tagApiServiceMock.Object); }
public void Setup() { _modeRepositoryMock = new Mock <IModeRepository>(); _modeMock = new Mock <Mode>(); _modeMock.SetupGet(m => m.Plant).Returns(TestPlant); _modeMock.SetupGet(x => x.Id).Returns(ModeId); _modeRepositoryMock .Setup(r => r.GetByIdAsync(ModeId)) .Returns(Task.FromResult(_modeMock.Object)); // Arrange _step = new Step(TestPlant, "S", _modeMock.Object, new Responsible(TestPlant, "RC", "RD")); _step.SetProtectedIdForTesting(StepId); _journeyRepositoryMock = new Mock <IJourneyRepository>(); _journeyRepositoryMock .Setup(x => x.GetStepByStepIdAsync(StepId)) .Returns(Task.FromResult(_step)); _projectRepositoryMock = new Mock <IProjectRepository>(); _projectRepositoryMock .Setup(x => x.Add(It.IsAny <Project>())) .Callback <Project>(project => { _projectAddedToRepository = project; }); _rtRepositoryMock = new Mock <IRequirementTypeRepository>(); var rdMock1 = new Mock <RequirementDefinition>(); rdMock1.SetupGet(x => x.Id).Returns(ReqDefId1); rdMock1.SetupGet(x => x.Plant).Returns(TestPlant); var rdMock2 = new Mock <RequirementDefinition>(); rdMock2.SetupGet(x => x.Id).Returns(ReqDefId2); rdMock2.SetupGet(x => x.Plant).Returns(TestPlant); _rtRepositoryMock .Setup(r => r.GetRequirementDefinitionsByIdsAsync(new List <int> { ReqDefId1, ReqDefId2 })) .Returns(Task.FromResult(new List <RequirementDefinition> { rdMock1.Object, rdMock2.Object })); _mainTagDetails1 = new PCSTagDetails { AreaCode = "AreaCode1", AreaDescription = "AreaDescription1", CallOffNo = "CalloffNo1", CommPkgNo = "CommPkgNo1", Description = "Description1", DisciplineCode = "DisciplineCode1", DisciplineDescription = "DisciplineDescription1", McPkgNo = "McPkgNo1", PurchaseOrderNo = "PurchaseOrderNo1", TagFunctionCode = "TagFunctionCode1", TagNo = TestTagNo1, ProjectDescription = TestProjectDescription }; _mainTagDetails2 = new PCSTagDetails { AreaCode = "AreaCode2", AreaDescription = "AreaDescription2", CallOffNo = "CalloffNo2", CommPkgNo = "CommPkgNo2", Description = "Description2", DisciplineCode = "DisciplineCode2", DisciplineDescription = "DisciplineDescription1", McPkgNo = "McPkgNo2", PurchaseOrderNo = "PurchaseOrderNo2", TagFunctionCode = "TagFunctionCode2", TagNo = TestTagNo2, ProjectDescription = TestProjectDescription }; IList <PCSTagDetails> mainTagDetailList = new List <PCSTagDetails> { _mainTagDetails1, _mainTagDetails2 }; _tagApiServiceMock = new Mock <ITagApiService>(); _tagApiServiceMock .Setup(x => x.GetTagDetailsAsync(TestPlant, TestProjectName, new List <string> { TestTagNo1, TestTagNo2 })) .Returns(Task.FromResult(mainTagDetailList)); _command = new CreateTagsCommand( new List <string> { TestTagNo1, TestTagNo2 }, TestProjectName, _step.Id, new List <RequirementForCommand> { new RequirementForCommand(ReqDefId1, Interval1), new RequirementForCommand(ReqDefId2, Interval2), }, "Remark", "SA"); _dut = new CreateTagsCommandHandler( _projectRepositoryMock.Object, _journeyRepositoryMock.Object, _modeRepositoryMock.Object, _rtRepositoryMock.Object, UnitOfWorkMock.Object, PlantProviderMock.Object, _tagApiServiceMock.Object); }