/// <summary> /// Set species observation count information. /// </summary> /// <param name="darwinCoreInformation">Darwin core information.</param> public static void SetCount(this WebDarwinCoreInformation darwinCoreInformation) { darwinCoreInformation.MaxSpeciesObservationCount = Settings.Default.MaxSpeciesObservationWithInformation; if (darwinCoreInformation.SpeciesObservationIds.IsNotNull()) { darwinCoreInformation.SpeciesObservationCount = darwinCoreInformation.SpeciesObservationIds.Count; } else if (darwinCoreInformation.SpeciesObservations.IsNotNull()) { // ReSharper disable once PossibleNullReferenceException darwinCoreInformation.SpeciesObservationCount = darwinCoreInformation.SpeciesObservations.Count; } else { darwinCoreInformation.SpeciesObservationCount = 0; } }
public void CheckDarwinCoreInformation(WebDarwinCoreInformation information) { Assert.IsNotNull(information); Assert.IsTrue(0 < information.MaxSpeciesObservationCount); if (information.SpeciesObservationCount > information.MaxSpeciesObservationCount) { Assert.IsTrue(information.SpeciesObservationIds.IsNotEmpty()); Assert.AreEqual(information.SpeciesObservationCount, information.SpeciesObservationIds.Count); } else { Assert.IsTrue(information.SpeciesObservations.IsNotEmpty()); Assert.AreEqual(information.SpeciesObservationCount, information.SpeciesObservations.Count); } if (information.SpeciesObservations.IsNotEmpty()) { foreach (WebDarwinCore speciesObservation in information.SpeciesObservations) { Assert.IsNotNull(speciesObservation); Assert.IsTrue(speciesObservation.CollectionCode.IsNotEmpty()); } } }