Ejemplo n.º 1
0
 protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (Noark5TestHelper.IdentifiesBaseRegistrationInRegistration(eventArgs))
     {
         _baseRegistrationAttributeIsFound = true;
     }
 }
Ejemplo n.º 2
0
 protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (Noark5TestHelper.IdentifiesJournalPostRegistration(eventArgs))
     {
         _archiveExtractionJournalPostCount++;
     }
 }
 protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (Noark5TestHelper.IdentifiesJournalPostRegistration(eventArgs))
     {
         _journalPostAttributeIsFound = true;
     }
 }
Ejemplo n.º 4
0
 protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (Noark5TestHelper.IdentifiesTypefolder(eventArgs))
     {
         int level = eventArgs.Path.GetSameElementSubLevel();
         AddFolderOnLevel(_currentArchivePart.FoldersPerLevel, eventArgs.Value, level);
     }
 }
 protected override void ReadElementValueEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (eventArgs.Path.Matches("opprettetDato", "registrering") &&
         Noark5TestHelper.TryParseArchiveDate(eventArgs.Value, out DateTime registrationCreatedTime))
     {
         _registrationCreationDates.Add(registrationCreatedTime);
     }
 }
 protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
 {
     if (Noark5TestHelper.IdentifiesJournalPostRegistration(eventArgs))
     {
         _currentJournalPost = new JournalPost {
             ArchivePartSystemId = _currentArchivePartSystemId
         }
     }
     ;
 }
Ejemplo n.º 7
0
        public NumberOfJournalPosts(Archive archive)
        {
            try
            {
                _publicJournalNumberOfJournalPosts  = GetPostCountFromJournal(archive.PublicJournalFile);
                _runningJournalNumberOfJournalPosts = GetPostCountFromJournal(archive.RunningJournalFile);
            }
            catch (Exception)
            {
                _testResults.Add(new TestResult(ResultType.Error, Location.Archive,
                                                Noark5Messages.NumberOfJournalPostsMessage_CouldNotReadFromJournals));
            }

            _periodSeparationIsSharp = Noark5TestHelper.PeriodSeparationIsSharp(archive);
        }
Ejemplo n.º 8
0
        protected override List <TestResult> GetTestResults()
        {
            var testResults = new List <TestResult>();

            var totalNumberOfFolders = 0;
            var message = "";

            foreach (ArchivePart archivePart in _archiveParts)
            {
                if (_archiveParts.Count > 1)
                {
                    message = string.Format(Noark5Messages.ArchivePartSystemId, archivePart.SystemId) + " - ";
                }

                foreach (var foldersPerLevel in archivePart.FoldersPerLevel)
                {
                    totalNumberOfFolders += foldersPerLevel.Value.Values.Sum();

                    string folderType = Noark5TestHelper.StripNamespace(foldersPerLevel.Key);

                    testResults.Add(new TestResult(ResultType.Success, new Location(""), string.Format(
                                                       message + Noark5Messages.NumberOfTypeFolders, folderType, foldersPerLevel.Value.Values.Sum())));

                    if (foldersPerLevel.Value.Count > 1)
                    {
                        foreach (var foldersAtLevel in foldersPerLevel.Value)
                        {
                            testResults.Add(new TestResult(ResultType.Success, new Location(""),
                                                           message + string.Format(Noark5Messages.NumberOfTypeFoldersAtLevel, folderType,
                                                                                   foldersAtLevel.Key, foldersAtLevel.Value)));
                        }
                    }
                }
            }

            int documentedNumberOfFolders = GetDocumentedNumberOfFolders();

            if (totalNumberOfFolders != documentedNumberOfFolders)
            {
                testResults.Add(new TestResult(ResultType.Error, new Location(""), string.Format(
                                                   Noark5Messages.NumberOfFolders_DocumentedAndActualMismatch, documentedNumberOfFolders, totalNumberOfFolders)));
            }

            testResults.Insert(0, new TestResult(ResultType.Success, new Location(""),
                                                 string.Format(Noark5Messages.TotalResultNumber, totalNumberOfFolders.ToString())));

            return(testResults);
        }
Ejemplo n.º 9
0
        protected override void ReadAttributeEvent(object sender, ReadElementEventArgs eventArgs)
        {
            if (Noark5TestHelper.IdentifiesRegistration(eventArgs))
            {
                var registrationType = eventArgs.Value;

                if (_currentArchivePart.Registrations.ContainsKey(registrationType))
                {
                    _currentArchivePart.Registrations[registrationType]++;
                }
                else
                {
                    _currentArchivePart.Registrations.Add(registrationType, 1);
                }
            }
        }
Ejemplo n.º 10
0
        public N5_59_NumberOfJournalPosts(Archive archive)
        {
            ArchiveXmlFile publicJournal  = archive.GetArchiveXmlFile(ArkadeConstants.PublicJournalXmlFileName);
            ArchiveXmlFile runningJournal = archive.GetArchiveXmlFile(ArkadeConstants.RunningJournalXmlFileName);

            try
            {
                _publicJournalNumberOfJournalPosts  = GetPostCountFromJournal(publicJournal);
                _runningJournalNumberOfJournalPosts = GetPostCountFromJournal(runningJournal);
            }
            catch (Exception)
            {
                _testResults.Add(new TestResult(ResultType.Error, Location.Archive,
                                                Noark5Messages.NumberOfJournalPostsMessage_CouldNotReadFromJournals));
            }

            _periodSeparationIsSharp = Noark5TestHelper.PeriodSeparationIsSharp(archive);
        }
        protected override void ReadElementValueEvent(object sender, ReadElementEventArgs eventArgs)
        {
            if (eventArgs.Path.Matches("systemID", "arkivdel"))
            {
                _currentArchivePart = new ArchivePart {
                    SystemId = eventArgs.Value
                };
                _archiveParts.Add(_currentArchivePart);
            }

            if (!eventArgs.Path.Matches("opprettetDato", "registrering"))
            {
                return;
            }

            if (Noark5TestHelper.TryParseArchiveDate(eventArgs.Value, out DateTime registrationCreatedTime))
            {
                _currentArchivePart.RegistrationCreationDates.Add(registrationCreatedTime);
            }
            else
            {
                _invalidRegistrationCreationDateCount++;
            }
        }
Ejemplo n.º 12
0
        protected override List <TestResult> GetTestResults()
        {
            var testResults = new List <TestResult>();

            var totalNumberOfRegistrations = 0;

            bool hasMultipleArchiveParts = _archiveParts.Count > 1;

            foreach (ArchivePart archivePart in _archiveParts)
            {
                string archivePartMessagePrefix = hasMultipleArchiveParts
                    ? string.Format(Noark5Messages.ArchivePartSystemId, archivePart.SystemId) + " - "
                    : string.Empty;

                testResults.Add(new TestResult(ResultType.Success, new Location(string.Empty),
                                               archivePartMessagePrefix + string.Format(
                                                   Noark5Messages.TotalResultNumber, archivePart.TotalRegistrationsCount
                                                   )));

                foreach (var registration in archivePart.Registrations)
                {
                    testResults.Add(new TestResult(ResultType.Success, new Location(string.Empty),
                                                   archivePartMessagePrefix + string.Format(
                                                       Noark5Messages.NumberOfTypeRegisters, Noark5TestHelper.StripNamespace(registration.Key), registration.Value
                                                       )));
                }

                totalNumberOfRegistrations += archivePart.TotalRegistrationsCount;
            }

            if (hasMultipleArchiveParts)
            {
                testResults.Insert(0, new TestResult(ResultType.Success, new Location(string.Empty),
                                                     string.Format(Noark5Messages.TotalResultNumber, totalNumberOfRegistrations)));
            }

            return(testResults);
        }
 public N5_60_ArchiveStartAndEndDateControl(Archive archive)
 {
     _archive = archive;
     _registrationCreationDates = new SortedSet <DateTime>();
     _periodSeparationIsSharp   = Noark5TestHelper.PeriodSeparationIsSharp(archive);
 }