Пример #1
0
        public void HasSeverealRestrictionsOnSeveralArchiveParts()
        {
            XmlElementHelper helper = new XmlElementHelper()
                                      .Add("arkiv",
                                           new XmlElementHelper()
                                           .Add("arkivdel",
                                                new XmlElementHelper()
                                                .Add("systemID", "someArchivePartSystemId_1")
                                                .Add("skjerming", string.Empty)
                                                .Add("klassifikasjonssystem",
                                                     new XmlElementHelper()
                                                     .Add("klasse",
                                                          new XmlElementHelper()
                                                          .Add("skjerming", string.Empty)
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("skjerming", string.Empty)
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("skjerming", string.Empty)
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("skjerming", string.Empty))))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("skjerming", string.Empty)
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("skjerming", string.Empty)))))))
                                           .Add("arkivdel",
                                                new XmlElementHelper()
                                                .Add("systemID", "someArchivePartSystemId_2")
                                                .Add("skjerming", string.Empty)
                                                .Add("klassifikasjonssystem",
                                                     new XmlElementHelper()
                                                     .Add("klasse",
                                                          new XmlElementHelper()
                                                          .Add("skjerming", string.Empty)
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("skjerming", string.Empty)
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("skjerming", string.Empty)
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("skjerming", string.Empty))))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("skjerming", string.Empty)
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("skjerming", string.Empty))))))));

            // Creating a test archive stating that it should contain restrictions:
            var testArchive = new ArchiveBuilder().WithArchiveType(ArchiveType.Noark5)
                              .WithWorkingDirectoryRoot("TestData\\Noark5\\MetaDataTesting\\BooleansTrue").Build();

            TestRun testRun = helper.RunEventsOnTest(new NumberOfRestrictions(testArchive));

            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Skjerminger i arkivdel - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Skjerminger i klasse - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Skjerminger i mappe - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Skjerminger i registrering - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Skjerminger i dokumentbeskrivelse - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Skjerminger i arkivdel - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Skjerminger i klasse - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Skjerminger i mappe - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Skjerminger i registrering - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Skjerminger i dokumentbeskrivelse - Antall: 2"
                                                 ));
            testRun.Results.Count.Should().Be(10);
        }
Пример #2
0
        public void ShouldFindRegistrationsForSomeClassesOnDifferentArchiveParts()
        {
            XmlElementHelper helper = new XmlElementHelper().Add("arkiv",
                                                                 new XmlElementHelper()
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_1")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper()
                                                                           .Add("klasse", // Has 2 registrations
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_1")
                                                                                .Add("registrering", string.Empty)
                                                                                .Add("registrering", string.Empty))
                                                                           .Add("klasse", // Has sub-class
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_2")
                                                                                .Add("klasse", // Has 1 registration
                                                                                     new XmlElementHelper()
                                                                                     .Add("systemID", "someClassSystemId_3")
                                                                                     .Add("registrering", string.Empty)))
                                                                           .Add("klasse", // Has sub-class
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_4")
                                                                                .Add("klasse", // Has no registrations
                                                                                     new XmlElementHelper()
                                                                                     .Add("systemID", "someClassSystemId_5")))))
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_2")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper()
                                                                           .Add("klasse", // Has 2 registrations
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_6")
                                                                                .Add("registrering", string.Empty)
                                                                                .Add("registrering", string.Empty))
                                                                           .Add("klasse", // Has sub-class
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_7")
                                                                                .Add("klasse", // Has 1 registration
                                                                                     new XmlElementHelper()
                                                                                     .Add("systemID", "someClassSystemId_8")
                                                                                     .Add("registrering", string.Empty)))
                                                                           .Add("klasse", // Has sub-class
                                                                                new XmlElementHelper()
                                                                                .Add("systemID", "someClassSystemId_9")
                                                                                .Add("klasse", // Has no registrations
                                                                                     new XmlElementHelper()
                                                                                     .Add("systemID", "someClassSystemId_10"))))));

            TestRun testRun = helper.RunEventsOnTest(new NumberOfRegistrationsPerClass());

            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Klasse (systemID): someClassSystemId_1 - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Klasse (systemID): someClassSystemId_3 - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Klasse (systemID): someClassSystemId_6 - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Klasse (systemID): someClassSystemId_8 - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Klasser uten registreringer (og uten underklasser) - Antall: 2"
                                                 ));
            testRun.Results.Count.Should().Be(5);
        }
        public void ShouldFindSeveralJournalpostTypesInSingleArchivePartSomeWithoutMainDocument()
        {
            XmlElementHelper helper = new XmlElementHelper().Add("arkiv",
                                                                 new XmlElementHelper()
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_4")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper().Add("klasse",
                                                                                                      new XmlElementHelper()
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_15")
                                                                                                                                      .Add("dokumentbeskrivelse",
                                                                                                                                           new XmlElementHelper()
                                                                                                                                           .Add("tilknyttetRegistreringSom", "Hoveddokument"))
                                                                                                                                      .Add("journalposttype", "Inngående dokument")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_16")
                                                                                                                                      .Add("dokumentbeskrivelse",
                                                                                                                                           new XmlElementHelper()
                                                                                                                                           .Add("tilknyttetRegistreringSom", "Hoveddokument"))
                                                                                                                                      .Add("journalposttype", "Utgående dokument")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_17")
                                                                                                                                      .Add("dokumentbeskrivelse",
                                                                                                                                           new XmlElementHelper()
                                                                                                                                           .Add("tilknyttetRegistreringSom", "Hoveddokument"))
                                                                                                                                      .Add("journalposttype", "Utgående dokument")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_18")
                                                                                                                                      .Add("dokumentbeskrivelse",
                                                                                                                                           new XmlElementHelper()
                                                                                                                                           .Add("tilknyttetRegistreringSom", "Hoveddokument"))
                                                                                                                                      .Add("journalposttype", "Saksframlegg")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_19")
                                                                                                                                      .Add("journalposttype", "Organinternt dokument for oppfølging")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_20")
                                                                                                                                      .Add("journalposttype", "Organinternt dokument uten oppfølging")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper()
                                                                                                                                      .Add("systemID", "someJournalPostSystemId_21")
                                                                                                                                      .Add("journalposttype", "Saksframlegg")))))));


            TestRun testRun = helper.RunEventsOnTest(new NumberOfEachJournalPostType());


            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalposttype: Inngående dokument - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalposttype: Utgående dokument - Antall: 2"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalposttype: Organinternt dokument for oppfølging - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalposttype: Organinternt dokument uten oppfølging - Antall: 1"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalposttype: Saksframlegg - Antall: 2"
                                                 ));


            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalpost med systemID someJournalPostSystemId_19 mangler hoveddokument"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalpost med systemID someJournalPostSystemId_20 mangler hoveddokument"
                                                 ));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Journalpost med systemID someJournalPostSystemId_21 mangler hoveddokument"
                                                 ));


            testRun.Results.Count.Should().Be(8);
        }
        public void HasSeverealClassificationsOnSeveralArchiveParts()
        {
            XmlElementHelper helper = new XmlElementHelper()
                                      .Add("arkiv",
                                           new XmlElementHelper()
                                           .Add("arkivdel",
                                                new XmlElementHelper()
                                                .Add("systemID", "someArchivePartSystemId_1")
                                                .Add("gradering",
                                                     new XmlElementHelper()
                                                     .Add("gradering", "Strengt hemmelig"))
                                                .Add("klassifikasjonssystem",
                                                     new XmlElementHelper()
                                                     .Add("klasse",
                                                          new XmlElementHelper()
                                                          .Add("gradering",
                                                               new XmlElementHelper()
                                                               .Add("gradering", "Strengt hemmelig"))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("gradering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering", "Strengt hemmelig"))
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering", "Strengt hemmelig"))
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering",
                                                                              new XmlElementHelper()
                                                                              .Add("gradering", "Strengt hemmelig")))))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("gradering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering", "Strengt hemmelig"))
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering",
                                                                              new XmlElementHelper()
                                                                              .Add("gradering", "Strengt hemmelig"))))))))
                                           .Add("arkivdel",
                                                new XmlElementHelper()
                                                .Add("systemID", "someArchivePartSystemId_2")
                                                .Add("gradering",
                                                     new XmlElementHelper()
                                                     .Add("gradering", "Strengt hemmelig"))
                                                .Add("klassifikasjonssystem",
                                                     new XmlElementHelper()
                                                     .Add("klasse",
                                                          new XmlElementHelper()
                                                          .Add("gradering",
                                                               new XmlElementHelper()
                                                               .Add("gradering", "Strengt hemmelig"))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("gradering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering", "Strengt hemmelig"))
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering", "Strengt hemmelig"))
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering",
                                                                              new XmlElementHelper()
                                                                              .Add("gradering", "Strengt hemmelig")))))
                                                          .Add("mappe",
                                                               new XmlElementHelper()
                                                               .Add("gradering",
                                                                    new XmlElementHelper()
                                                                    .Add("gradering", "Strengt hemmelig"))
                                                               .Add("registrering",
                                                                    new XmlElementHelper()
                                                                    .Add("dokumentbeskrivelse",
                                                                         new XmlElementHelper()
                                                                         .Add("gradering",
                                                                              new XmlElementHelper()
                                                                              .Add("gradering", "Strengt hemmelig")))))))));


            TestRun testRun = helper.RunEventsOnTest(new NumberOfClassifications());

            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Graderinger i arkivdel - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Graderinger i klasse - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Graderinger i mappe - Antall: 2"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Graderinger i registrering - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Graderinger i dokumentbeskrivelse - Antall: 2"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Graderinger i arkivdel - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Graderinger i klasse - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Graderinger i mappe - Antall: 2"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Graderinger i registrering - Antall: 1"));
            testRun.Results.Should().Contain(r => r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Graderinger i dokumentbeskrivelse - Antall: 2"));
            testRun.Results.Count.Should().Be(10);
        }
Пример #5
0
 public XmlElementHelper Add(string name, XmlElementHelper childHelper)
 {
     Add(name, new string[0], childHelper);
     return(this);
 }
Пример #6
0
        public void ShouldFindSeveralDocumentStatusesInSeveralArchiveParts()
        {
            XmlElementHelper helper = new XmlElementHelper().Add("arkiv",
                                                                 new XmlElementHelper()
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_1")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper().Add("klasse",
                                                                                                      new XmlElementHelper()
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er ferdigstilt"))))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er ferdigstilt"))))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er under redigering")))))))
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_2")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper().Add("klasse",
                                                                                                      new XmlElementHelper()
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er ferdigstilt"))))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er ferdigstilt"))))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper()
                                                                                                           .Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                new XmlElementHelper()
                                                                                                                .Add("dokumentbeskrivelse",
                                                                                                                     new XmlElementHelper()
                                                                                                                     .Add("dokumentstatus", "Dokumentet er under redigering"))))))));


            TestRun testRun = helper.RunEventsOnTest(new NumberOfEachDocumentStatus());

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Dokumentstatus: Dokumentet er ferdigstilt - Antall: 2")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Dokumentstatus: Dokumentet er under redigering - Antall: 1") &&
                                             r.IsError() // Only "Dokumentet er ferdigstilt" on regular deposits
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Dokumentstatus: Dokumentet er ferdigstilt - Antall: 2")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Dokumentstatus: Dokumentet er under redigering - Antall: 1") &&
                                             r.IsError() // Only "Dokumentet er ferdigstilt" on regular deposits
                                             );
            testRun.Results.Count.Should().Be(4);
        }
Пример #7
0
        public void NumberOfClassesIsTwoInEachArchivePart()
        {
            XmlElementHelper helper = new XmlElementHelper().Add("arkiv",
                                                                 new XmlElementHelper()
                                                                 // Arkivdel 1
                                                                 .Add("arkivdel", new XmlElementHelper()
                                                                      .Add("systemID", "someSystemId_1")
                                                                      // Primært klassifikasjonssystem (inneholder registrering eller mappe)
                                                                      .Add("klassifikasjonssystem", new XmlElementHelper()
                                                                           .Add("systemID", "klassSys_1")
                                                                           .Add("registrering", new XmlElementHelper()
                                                                                .Add("klasse", string.Empty)
                                                                                .Add("klasse", new XmlElementHelper()
                                                                                     .Add("klasse", new XmlElementHelper()))))
                                                                      // Sekundært klassifikasjonssystem
                                                                      .Add("klassifikasjonssystem", new XmlElementHelper()
                                                                           .Add("systemID", "klassSys_2")
                                                                           .Add("klasse", string.Empty)
                                                                           .Add("klasse", new XmlElementHelper()
                                                                                .Add("klasse", new XmlElementHelper()))))
                                                                 // Arkivdel 2
                                                                 .Add("arkivdel", new XmlElementHelper()
                                                                      .Add("systemID", "someSystemId_2")
                                                                      // Primært klassifikasjonssystem (inneholder registrering eller mappe)
                                                                      .Add("klassifikasjonssystem", new XmlElementHelper()
                                                                           .Add("systemID", "klassSys_1")
                                                                           .Add("mappe", new XmlElementHelper()
                                                                                .Add("klasse", string.Empty)
                                                                                .Add("klasse", new XmlElementHelper()
                                                                                     .Add("klasse", new XmlElementHelper()))))
                                                                      // Sekundært klassifikasjonssystem
                                                                      .Add("klassifikasjonssystem", new XmlElementHelper()
                                                                           .Add("systemID", "klassSys_2")
                                                                           .Add("klasse", string.Empty)
                                                                           .Add("klasse", new XmlElementHelper()
                                                                                .Add("klasse", new XmlElementHelper())))));

            TestRun testRun = helper.RunEventsOnTest(new NumberOfClasses());

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Primært klassifikasjonssystem (systemID): klassSys_1 - Totalt antall klasser: 3"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Primært klassifikasjonssystem (systemID): klassSys_1 - Klasser på nivå 1: 2"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Primært klassifikasjonssystem (systemID): klassSys_1 - Klasser på nivå 2: 1"));

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Totalt antall klasser: 3"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Klasser på nivå 1: 2"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_1 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Klasser på nivå 2: 1"));

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Primært klassifikasjonssystem (systemID): klassSys_1 - Totalt antall klasser: 3"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Primært klassifikasjonssystem (systemID): klassSys_1 - Klasser på nivå 1: 2"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Primært klassifikasjonssystem (systemID): klassSys_1 - Klasser på nivå 2: 1"));

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Totalt antall klasser: 3"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Klasser på nivå 1: 2"));
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals("Arkivdel (systemID): someSystemId_2 - Sekundært klassifikasjonssystem (systemID): klassSys_2 - Klasser på nivå 2: 1"));
        }
        public void ShouldFindSeveralJournalStatusesInSeveralArchiveParts()
        {
            XmlElementHelper helper = new XmlElementHelper().Add("arkiv",
                                                                 new XmlElementHelper()
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_1")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper().Add("klasse",
                                                                                                      new XmlElementHelper()
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Arkivert")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Arkivert")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Utgår")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "JournalFørt"))))))
                                                                 .Add("arkivdel",
                                                                      new XmlElementHelper()
                                                                      .Add("systemID", "someArchivePartSystemId_2")
                                                                      .Add("klassifikasjonssystem",
                                                                           new XmlElementHelper().Add("klasse",
                                                                                                      new XmlElementHelper()
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Arkivert")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Arkivert")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "Utgår")))
                                                                                                      .Add("mappe",
                                                                                                           new XmlElementHelper().Add("registrering", new[] { "xsi:type", "journalpost" },
                                                                                                                                      new XmlElementHelper().Add("journalstatus", "JournalFørt")))))));


            TestRun testRun = helper.RunEventsOnTest(new NumberOfEachJournalStatus());

            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Journalstatus: Arkivert - Antall: 2")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Journalstatus: Utgår - Antall: 1")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_1 - Journalstatus: JournalFørt - Antall: 1") &&
                                             r.IsError() // Only "Arkivert" or "Utgår" on regular deposits
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Journalstatus: Arkivert - Antall: 2")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Journalstatus: Utgår - Antall: 1")
                                             );
            testRun.Results.Should().Contain(r =>
                                             r.Message.Equals(
                                                 "Arkivdel (systemID): someArchivePartSystemId_2 - Journalstatus: JournalFørt - Antall: 1") &&
                                             r.IsError() // Only "Arkivert" or "Utgår" on regular deposits
                                             );
            testRun.Results.Count.Should().Be(6);
        }