Пример #1
0
        public static List <ResultModel> FromDomain(Checklist.Checklist checklist)
        {
            var list = new List <ResultModel>();

            foreach (var r0 in checklist.Rubrics)
            {
                var rubric = r0.Value;
                MapToListRecursive(rubric, list, rubric.IsAutoSet);
            }

            return(list);
        }
Пример #2
0
        public static void ChecklistTreeStructureShouldBeConsistent(Checklist.Checklist checklist)
        {
            checklist.Should().NotBeNull();

            checklist.Rubrics.Count.Should().Be(2);
            checklist.Rubrics["R1"].Children.Count.Should().Be(2);
            checklist.Rubrics["R1"].Children.Should().ContainKeys("R1,P1", "R1,P2");
            checklist.Rubrics["R2"].Children.Count.Should().Be(2);
            checklist.Rubrics["R2"].Children.Should().ContainKeys("R2,G1", "R2,G2");

            checklist.Rubrics["R1"].Children["R1,P1"].ConjunctElementCode.Should().Be("R1,P1");
            checklist.Rubrics["R1"].Children["R1,P1"].ElementCode.Should().Be("P1");
            checklist.Rubrics["R1"].Children["R1,P1"].ShortName.Should().Be("P1");
            checklist.Rubrics["R1"].Children["R1,P1"].Parent.Should().NotBeNull();
            checklist.Rubrics["R1"].Children["R1,P1"].Parent.ConjunctElementCode.Should().Be("R1");
            checklist.Rubrics["R1"].Children["R1,P1"].Parent.ElementCode.Should().Be("R1");
            checklist.Rubrics["R1"].Children["R1,P1"].Parent.ShortName.Should().Be("R1");
            checklist.Rubrics["R1"].Children["R1,P2"].ConjunctElementCode.Should().Be("R1,P2");
            checklist.Rubrics["R1"].Children["R1,P2"].ElementCode.Should().Be("P2");
            checklist.Rubrics["R1"].Children["R1,P2"].ShortName.Should().Be("P2");
            checklist.Rubrics["R1"].Children["R1,P2"].Parent.Should().NotBeNull();
            checklist.Rubrics["R1"].Children["R1,P2"].Parent.ConjunctElementCode.Should().Be("R1");
            checklist.Rubrics["R1"].Children["R1,P2"].Parent.ElementCode.Should().Be("R1");
            checklist.Rubrics["R1"].Children["R1,P2"].Parent.ShortName.Should().Be("R1");

            checklist.Rubrics["R2"].Children["R2,G1"].ConjunctElementCode.Should().Be("R2,G1");
            checklist.Rubrics["R2"].Children["R2,G1"].ElementCode.Should().Be("G1");
            checklist.Rubrics["R2"].Children["R2,G1"].ShortName.Should().Be("G1");
            checklist.Rubrics["R2"].Children["R2,G1"].Parent.Should().NotBeNull();
            checklist.Rubrics["R2"].Children["R2,G1"].Parent.ConjunctElementCode.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G1"].Parent.ElementCode.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G1"].Parent.ShortName.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G1"].Children.Count.Should().Be(3);
            checklist.Rubrics["R2"].Children["R2,G1"].Children.Should().ContainKeys("R2,G1,P1", "R2,G1,P2", "R2,G1,P3");

            checklist.Rubrics["R2"].Children["R2,G2"].ConjunctElementCode.Should().Be("R2,G2");
            checklist.Rubrics["R2"].Children["R2,G2"].ElementCode.Should().Be("G2");
            checklist.Rubrics["R2"].Children["R2,G2"].ShortName.Should().Be("G2");
            checklist.Rubrics["R2"].Children["R2,G2"].Parent.Should().NotBeNull();
            checklist.Rubrics["R2"].Children["R2,G2"].Parent.ConjunctElementCode.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G2"].Parent.ElementCode.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G2"].Parent.ShortName.Should().Be("R2");
            checklist.Rubrics["R2"].Children["R2,G2"].Children.Count.Should().Be(2);
            checklist.Rubrics["R2"].Children["R2,G2"].Children.Should().ContainKeys("R2,G2,SG1", "R2,G2,SG2");

            checklist.Rubrics["R2"].Children["R2,G2"].Children["R2,G2,SG1"].Children.Count.Should().Be(4);
            checklist.Rubrics["R2"].Children["R2,G2"].Children["R2,G2,SG1"].Children.Should().ContainKeys("R2,G2,SG1,P1", "R2,G2,SG1,P2", "R2,G2,SG1,P3", "R2,G2,SG1,P4");
            checklist.Rubrics["R2"].Children["R2,G2"].Children["R2,G2,SG2"].Children.Count.Should().Be(2);
            checklist.Rubrics["R2"].Children["R2,G2"].Children["R2,G2,SG2"].Children.Should().ContainKeys("R2,G2,SG2,P1", "R2,G2,SG2,P2");
        }
 public static Checklist.Checklist AllOk(Checklist.Checklist checklist)
 {
     checklist.SetOutcome("R1,P1", InspectionOutcome.Ok);
     checklist.SetOutcome("R1,P2", InspectionOutcome.Ok);
     checklist.SetOutcome("R1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG1,P1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG1,P2", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG1,P3", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG1,P4", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG2,P1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG2,P2", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2,SG2", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G2", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G1,P1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G1,P2", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G1,P3", InspectionOutcome.Ok);
     checklist.SetOutcome("R2,G1", InspectionOutcome.Ok);
     checklist.SetOutcome("R2", InspectionOutcome.Ok);
     return(checklist);
 }
        public static Checklist.Checklist ConstructChecklist()
        {
            var checklist = new Checklist.Checklist(1)
                            .AddRubric("R1", new RubricResult("R1", "R1", "R1")
                                       .AddChild("R1,P1", new PointResult("R1,P1", "P1", "P1"))
                                       .AddChild("R1,P2", new PointResult("R1,P2", "P2", "P2")))
                            .AddRubric("R2", new RubricResult("R2", "R2", "R2")
                                       .AddChild("R2,G1", new GroupResult("R2,G1", "G1", "G1")
                                                 .AddChild("R2,G1,P1", new PointResult("R2,G1,P1", "P1", "P1"))
                                                 .AddChild("R2,G1,P2", new PointResult("R2,G1,P2", "P2", "P2"))
                                                 .AddChild("R2,G1,P3", new PointResult("R2,G1,P3", "P3", "P3")))
                                       .AddChild("R2,G2", new GroupResult("R2,G2", "G2", "G2")
                                                 .AddChild("R2,G2,SG1", new GroupResult("R2,G2,SG1", "SG1", "SG1")
                                                           .AddChild("R2,G2,SG1,P1", new PointResult("R2,G2,SG1,P1", "P1", "P1"))
                                                           .AddChild("R2,G2,SG1,P2", new PointResult("R2,G2,SG1,P2", "P2", "P2"))
                                                           .AddChild("R2,G2,SG1,P3", new PointResult("R2,G2,SG1,P3", "P3", "P3"))
                                                           .AddChild("R2,G2,SG1,P4", new PointResult("R2,G2,SG1,P4", "P4", "P4")))
                                                 .AddChild("R2,G2,SG2", new GroupResult("R2,G2,SG2", "SG2", "SG2")
                                                           .AddChild("R2,G2,SG2,P1", new PointResult("R2,G2,SG2,P1", "P1", "P1"))
                                                           .AddChild("R2,G2,SG2,P2", new PointResult("R2,G2,SG2,P2", "P2", "P2")))));

            return(checklist);
        }
        public static InspectionPdfModel FromDomain(Inspection.Inspection inspection, Farm.Farm farm, Checklist.Checklist checklist, string cantonCode, string logoPath)
        {
            var model = new InspectionPdfModel
            {
                CampaignName       = inspection.Campaign.Name,
                CampaignYear       = inspection.Campaign.Year,
                DomainShortName    = inspection.Domain.ShortName,
                DomainName         = inspection.Domain.ShortName,
                FocaaLogoPath      = logoPath,
                InspectionResults  = ResultModel.FromDomain(checklist),
                ActionsOrDocuments = inspection.Compliance.ActionsOrDocuments,
                DueDate            = inspection.Compliance.DueDate,
                DoneOn             = inspection.FinishStatus.DoneOn,
                //DoneInTownZip = inspection.FinishStatus.DoneInTown?.Zip ?? 0,
                //DoneInTownName = inspection.FinishStatus.DoneInTown?.Name,
                HasProxy                 = inspection.FarmerSignature.HasProxy,
                ProxyName                = inspection.FarmerSignature.Proxy,
                DoneByInspector          = inspection.InspectorSignature.Signatory,
                Inspector2               = inspection.Inspector2Signature.Signatory,
                FarmerSignatureImage     = inspection.FarmerSignature.DataUrl,
                InspectorSignatureImage  = inspection.InspectorSignature.DataUrl,
                Inspector2SignatureImage = inspection.Inspector2Signature.DataUrl,
                CantonCode               = cantonCode,
                Farm             = FarmModel.FromDomain(farm),
                CommentForFarmer = inspection.CommentForFarmer
            };

            return(model);
        }
Пример #6
0
        public void Empty_checklist_Percent_should_be_zero_by_convention()
        {
            var checklist = new Checklist.Checklist(1, 1);

            checklist.Percent.Should().Be(0);
        }
Пример #7
0
 public ChecklistTests()
 {
     checklist_ = TestDataHelper.ConstructChecklist();
 }
Пример #8
0
        public void Outcome_is_nc_by_convention_when_checklist_is_empty()
        {
            var checklist = new Checklist.Checklist(1, 1);

            checklist.OutcomeComputed.Should().Be(InspectionOutcome.NotInspected);
        }
Пример #9
0
 public ChecklistTests()
 {
     checklist_ = ChecklistTestHelper.BuildChecklist();
 }