Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.cs =================================================================== diff -u -rdfe18c1eb7e5832aa59fe57b5fa2a09548cdaf56 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.cs) (revision dfe18c1eb7e5832aa59fe57b5fa2a09548cdaf56) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -45,7 +45,7 @@ /// to create an for. /// An . /// Thrown when any parameter is null. - public static AggregatedSerializableCombinedFailureMechanismSectionAssemblies Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableCombinedFailureMechanismSectionAssemblies Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult totalAssemblyResult, IEnumerable combinedSectionAssemblies) { Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.cs =================================================================== diff -u -r13612e9a9674f3aff81fc1e3178cca9617c35966 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.cs) (revision 13612e9a9674f3aff81fc1e3178cca9617c35966) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -48,7 +48,7 @@ /// for. /// An . /// Thrown when any parameter is null. - public static AggregatedSerializableCombinedFailureMechanismSectionAssembly Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableCombinedFailureMechanismSectionAssembly Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssemblyResult, SerializableFailureMechanismSectionCollection serializableFailureMechanismSectionCollection, ExportableCombinedSectionAssembly combinedSectionAssembly) Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismCreator.cs =================================================================== diff -u -re8210040e3962fda1daa0ec9d90ecfb10e351eb3 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismCreator.cs (.../AggregatedSerializableFailureMechanismCreator.cs) (revision e8210040e3962fda1daa0ec9d90ecfb10e351eb3) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismCreator.cs (.../AggregatedSerializableFailureMechanismCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -45,7 +45,7 @@ /// Thrown when any parameter is null. /// Thrown when the /// contains unsupported items in the failure mechanism section assembly results. - public static AggregatedSerializableFailureMechanism Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableFailureMechanism Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssemblyResult, ExportableFailureMechanism failureMechanism) { @@ -93,7 +93,7 @@ /// Thrown when any parameter is null. /// Thrown when the /// contains unsupported items in the failure mechanism section assembly results. - public static AggregatedSerializableFailureMechanism Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableFailureMechanism Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssemblyResult, ExportableFailureMechanism failureMechanism) { @@ -142,7 +142,7 @@ /// Thrown when an /// cannot be created for . private static AggregatedSerializableFailureMechanismSectionAssembly CreateFailureMechanismSectionAssembly( - UniqueIdentifierGenerator idGenerator, + IdentifierGenerator idGenerator, SerializableFailureMechanism serializableFailureMechanism, SerializableFailureMechanismSectionCollection serializableCollection, ExportableAggregatedFailureMechanismSectionAssemblyResultBase failureMechanismSectionAssemblyResult) Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreator.cs =================================================================== diff -u -re8210040e3962fda1daa0ec9d90ecfb10e351eb3 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreator.cs (.../AggregatedSerializableFailureMechanismSectionAssemblyCreator.cs) (revision e8210040e3962fda1daa0ec9d90ecfb10e351eb3) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreator.cs (.../AggregatedSerializableFailureMechanismSectionAssemblyCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -48,7 +48,7 @@ /// for. /// An . /// Thrown when any parameter is null. - public static AggregatedSerializableFailureMechanismSectionAssembly Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableFailureMechanismSectionAssembly Create(IdentifierGenerator idGenerator, SerializableFailureMechanismSectionCollection serializableCollection, SerializableFailureMechanism serializableFailureMechanism, ExportableAggregatedFailureMechanismSectionAssemblyResult sectionResult) @@ -98,7 +98,7 @@ /// for. /// An . /// Thrown when any parameter is null. - public static AggregatedSerializableFailureMechanismSectionAssembly Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableFailureMechanismSectionAssembly Create(IdentifierGenerator idGenerator, SerializableFailureMechanismSectionCollection serializableCollection, SerializableFailureMechanism serializableFailureMechanism, ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability sectionResult) @@ -148,7 +148,7 @@ /// for. /// An . /// Thrown when any parameter is null. - public static AggregatedSerializableFailureMechanismSectionAssembly Create(UniqueIdentifierGenerator idGenerator, + public static AggregatedSerializableFailureMechanismSectionAssembly Create(IdentifierGenerator idGenerator, SerializableFailureMechanismSectionCollection serializableCollection, SerializableFailureMechanism serializableFailureMechanism, ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly sectionResult) Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssemblyCreator.cs =================================================================== diff -u -r3aff374e2122ca5dc79791be6f68b2c73b1c9196 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssemblyCreator.cs (.../SerializableAssemblyCreator.cs) (revision 3aff374e2122ca5dc79791be6f68b2c73b1c9196) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssemblyCreator.cs (.../SerializableAssemblyCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -52,7 +52,7 @@ throw new ArgumentNullException(nameof(assessmentSection)); } - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); string serializableAssemblyId = idGenerator.GetNewId(Resources.SerializableAssembly_IdPrefix); SerializableAssessmentSection serializableAssessmentSection = SerializableAssessmentSectionCreator.Create(assessmentSection); @@ -95,14 +95,14 @@ aggregatedSerializableCombinedFailureMechanismSectionAssemblies)); } - private static AggregatedSerializableFailureMechanism CreateFailureMechanismsWithProbability(UniqueIdentifierGenerator idGenerator, + private static AggregatedSerializableFailureMechanism CreateFailureMechanismsWithProbability(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssemblyResult, ExportableFailureMechanism failureMechanism) { return AggregatedSerializableFailureMechanismCreator.Create(idGenerator, serializableTotalAssemblyResult, failureMechanism); } - private static AggregatedSerializableFailureMechanism CreateFailureMechanismsWithoutProbability(UniqueIdentifierGenerator idGenerator, + private static AggregatedSerializableFailureMechanism CreateFailureMechanismsWithoutProbability(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssemblyResult, ExportableFailureMechanism failureMechanism) { Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentProcessCreator.cs =================================================================== diff -u -r46e5f7ff312bd021b35238b01104364ed0944eea -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentProcessCreator.cs (.../SerializableAssessmentProcessCreator.cs) (revision 46e5f7ff312bd021b35238b01104364ed0944eea) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentProcessCreator.cs (.../SerializableAssessmentProcessCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -41,7 +41,7 @@ /// this process belongs to. /// A . /// Thrown when any parameter is null. - public static SerializableAssessmentProcess Create(UniqueIdentifierGenerator idGenerator, + public static SerializableAssessmentProcess Create(IdentifierGenerator idGenerator, SerializableAssessmentSection assessmentSection) { if (idGenerator == null) Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentSectionCreator.cs =================================================================== diff -u -rae1aef934ca1d30b94dabf44d640020541cebba0 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentSectionCreator.cs (.../SerializableAssessmentSectionCreator.cs) (revision ae1aef934ca1d30b94dabf44d640020541cebba0) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableAssessmentSectionCreator.cs (.../SerializableAssessmentSectionCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -46,7 +46,7 @@ throw new ArgumentNullException(nameof(assessmentSection)); } - return new SerializableAssessmentSection(UniqueIdentifierGenerator.GeneratedId(assessmentSection), + return new SerializableAssessmentSection(IdentifierGenerator.GeneratedId(assessmentSection), assessmentSection.Name, assessmentSection.Geometry); } Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismCreator.cs =================================================================== diff -u -re8210040e3962fda1daa0ec9d90ecfb10e351eb3 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismCreator.cs (.../SerializableFailureMechanismCreator.cs) (revision e8210040e3962fda1daa0ec9d90ecfb10e351eb3) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismCreator.cs (.../SerializableFailureMechanismCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -42,7 +42,7 @@ /// without a probability assembly result to create a for. /// A /// Thrown when any parameter is null. - public static SerializableFailureMechanism Create(UniqueIdentifierGenerator idGenerator, + public static SerializableFailureMechanism Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssembly, ExportableFailureMechanism failureMechanism) { @@ -78,7 +78,7 @@ /// with a probability assembly result to create a for. /// A . /// Thrown when any parameter is null. - public static SerializableFailureMechanism Create(UniqueIdentifierGenerator idGenerator, + public static SerializableFailureMechanism Create(IdentifierGenerator idGenerator, SerializableTotalAssemblyResult serializableTotalAssembly, ExportableFailureMechanism failureMechanism) { Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismSectionCreator.cs =================================================================== diff -u -re8210040e3962fda1daa0ec9d90ecfb10e351eb3 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismSectionCreator.cs (.../SerializableFailureMechanismSectionCreator.cs) (revision e8210040e3962fda1daa0ec9d90ecfb10e351eb3) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableFailureMechanismSectionCreator.cs (.../SerializableFailureMechanismSectionCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -45,7 +45,7 @@ /// to create a for. /// A . /// Thrown when any parameter is null. - public static SerializableFailureMechanismSection Create(UniqueIdentifierGenerator idGenerator, + public static SerializableFailureMechanismSection Create(IdentifierGenerator idGenerator, SerializableFailureMechanismSectionCollection serializableCollection, ExportableFailureMechanismSection section) { @@ -84,7 +84,7 @@ /// to create a for. /// A . /// Thrown when any parameter is null. - public static SerializableFailureMechanismSection Create(UniqueIdentifierGenerator idGenerator, + public static SerializableFailureMechanismSection Create(IdentifierGenerator idGenerator, SerializableFailureMechanismSectionCollection serializableCollection, ExportableCombinedFailureMechanismSection section) { Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableTotalAssemblyResultCreator.cs =================================================================== diff -u -r46e5f7ff312bd021b35238b01104364ed0944eea -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableTotalAssemblyResultCreator.cs (.../SerializableTotalAssemblyResultCreator.cs) (revision 46e5f7ff312bd021b35238b01104364ed0944eea) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Creators/SerializableTotalAssemblyResultCreator.cs (.../SerializableTotalAssemblyResultCreator.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -43,7 +43,7 @@ /// The assembly result for the assessment section. /// A . /// Thrown when any parameter is null. - public static SerializableTotalAssemblyResult Create(UniqueIdentifierGenerator idGenerator, + public static SerializableTotalAssemblyResult Create(IdentifierGenerator idGenerator, SerializableAssessmentProcess assessmentProcess, SerializableFailureMechanismAssemblyResult failureMechanismAssemblyResultWithProbability, SerializableFailureMechanismAssemblyResult failureMechanismAssemblyResultWithoutProbability, Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Helpers/IdentifierGenerator.cs =================================================================== diff -u --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Helpers/IdentifierGenerator.cs (revision 0) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Helpers/IdentifierGenerator.cs (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -0,0 +1,84 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using System.Collections.Generic; +using Ringtoets.Integration.IO.Assembly; +using Ringtoets.Integration.IO.Properties; + +namespace Ringtoets.Integration.IO.Helpers +{ + /// + /// Class to generate unique ids. + /// + public class IdentifierGenerator + { + private readonly Dictionary idLookup; + + /// + /// Creates a new instance of . + /// + public IdentifierGenerator() + { + idLookup = new Dictionary(); + } + + /// + /// Gets a new unique id prefixed by . + /// + /// The prefix to be used for the generated id. + /// An unique id. + /// Thrown when is + /// null, empty or consists of only whitespaces. + public string GetNewId(string prefix) + { + if (string.IsNullOrWhiteSpace(prefix)) + { + throw new ArgumentException($@"'{nameof(prefix)}' is null, empty or consists of whitespace.", nameof(prefix)); + } + + if (idLookup.ContainsKey(prefix)) + { + return $"{prefix}.{idLookup[prefix]++}"; + } + + idLookup[prefix] = 0; + return $"{prefix}.{idLookup[prefix]++}"; + } + + /// + /// Gets an id based on . + /// + /// The + /// to generate an id for. + /// An id. + /// Thrown when is null. + public static string GeneratedId(ExportableAssessmentSection assessmentSection) + { + if (assessmentSection == null) + { + throw new ArgumentNullException(nameof(assessmentSection)); + } + + return $"{Resources.SerializableAssessmentSection_IdPrefix}.{assessmentSection.Id}"; + } + } +} \ No newline at end of file Fisheye: Tag 3265c6b7b2cb65fd707b885d698bf106eb2a3307 refers to a dead (removed) revision in file `Ringtoets/Integration/src/Ringtoets.Integration.IO/Helpers/UniqueIdentifierGenerator.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Integration/src/Ringtoets.Integration.IO/Ringtoets.Integration.IO.csproj =================================================================== diff -u -r29144997c6a25b0f71d6348762859c9f848ef587 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/src/Ringtoets.Integration.IO/Ringtoets.Integration.IO.csproj (.../Ringtoets.Integration.IO.csproj) (revision 29144997c6a25b0f71d6348762859c9f848ef587) +++ Ringtoets/Integration/src/Ringtoets.Integration.IO/Ringtoets.Integration.IO.csproj (.../Ringtoets.Integration.IO.csproj) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -83,7 +83,7 @@ - + True Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreatorTest.cs =================================================================== diff -u -r3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreatorTest.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreatorTest.cs) (revision 3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreatorTest.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -60,7 +60,7 @@ // Call TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.Create( - new UniqueIdentifierGenerator(), + new IdentifierGenerator(), null, Enumerable.Empty()); @@ -75,7 +75,7 @@ // Call TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssembliesCreator.Create( - new UniqueIdentifierGenerator(), + new IdentifierGenerator(), new SerializableTotalAssemblyResult(), null); @@ -94,7 +94,7 @@ CreateCombinedSectionAssembly(CreateSection(2), 2) }; - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); SerializableTotalAssemblyResult totalAssemblyResult = CreateSerializableTotalAssembly("totalAssemblyResultId"); // Call Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreatorTest.cs =================================================================== diff -u -r3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreatorTest.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreatorTest.cs) (revision 3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreatorTest.cs (.../AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -57,7 +57,7 @@ public void Create_TotalAssemblyResultNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), null, new SerializableFailureMechanismSectionCollection(), CreateExportableCombinedSectionAssembly()); @@ -71,7 +71,7 @@ public void Create_FailureMechanismSectionCollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), null, CreateExportableCombinedSectionAssembly()); @@ -85,7 +85,7 @@ public void Create_CombinedSectionAssemblyNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableCombinedFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), new SerializableFailureMechanismSectionCollection(), null); @@ -114,7 +114,7 @@ var serializableSectionCollection = new SerializableFailureMechanismSectionCollection(serializableSectionCollectionId, new SerializableTotalAssemblyResult()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); // Call AggregatedSerializableCombinedFailureMechanismSectionAssembly aggregate = Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismCreatorTest.cs =================================================================== diff -u -r3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismCreatorTest.cs (.../AggregatedSerializableFailureMechanismCreatorTest.cs) (revision 3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismCreatorTest.cs (.../AggregatedSerializableFailureMechanismCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -67,7 +67,7 @@ var random = new Random(21); // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), null, new ExportableFailureMechanism( ExportableFailureMechanismAssemblyResultTestFactory.CreateResultWithoutProbability(), @@ -84,7 +84,7 @@ public void CreateFailureMechanismWithoutProbability_FailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), (ExportableFailureMechanism) null); @@ -110,7 +110,7 @@ random.NextEnumValue()); // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), failureMechanism); @@ -135,7 +135,7 @@ random.NextEnumValue(), random.NextEnumValue()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); const string totalAssemblyId = "totalAssemblyId"; SerializableTotalAssemblyResult serializableTotalAssembly = CreateSerializableTotalAssembly(totalAssemblyId); @@ -193,7 +193,7 @@ var random = new Random(21); // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), null, new ExportableFailureMechanism( ExportableFailureMechanismAssemblyResultTestFactory.CreateResultWithProbability(), @@ -210,7 +210,7 @@ public void CreateFailureMechanismWithProbability_FailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), (ExportableFailureMechanism) null); @@ -236,7 +236,7 @@ random.NextEnumValue()); // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismCreator.Create(new IdentifierGenerator(), new SerializableTotalAssemblyResult(), failureMechanism); @@ -261,7 +261,7 @@ random.NextEnumValue(), random.NextEnumValue()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); const string totalAssemblyId = "totalAssemblyId"; SerializableTotalAssemblyResult serializableTotalAssembly = CreateSerializableTotalAssembly(totalAssemblyId); Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreatorTest.cs =================================================================== diff -u -r3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreatorTest.cs (.../AggregatedSerializableFailureMechanismSectionAssemblyCreatorTest.cs) (revision 3756c7b2ee1e2f71e8fc471b4dfc4ba4285189f1) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/AggregatedSerializableFailureMechanismSectionAssemblyCreatorTest.cs (.../AggregatedSerializableFailureMechanismSectionAssemblyCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -60,7 +60,7 @@ public void CreateWithoutProbability_SerializableFailureMechanismSectionCollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), null, new SerializableFailureMechanism(), new ExportableAggregatedFailureMechanismSectionAssemblyResult( @@ -79,7 +79,7 @@ public void CreateWithoutProbability_SerializableFailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), null, new ExportableAggregatedFailureMechanismSectionAssemblyResult( @@ -98,7 +98,7 @@ public void CreateWithoutProbability_SectionResultNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), new SerializableFailureMechanism(), (ExportableAggregatedFailureMechanismSectionAssemblyResult) null); @@ -112,7 +112,7 @@ public void CreateWithoutProbability_WithValidArgumentsAndAllAssemblyTypesHaveResults_ReturnsAggregatedSerializableFailureMechanismSectionAssembly() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResult( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResult(10), @@ -174,7 +174,7 @@ FailureMechanismSectionAssemblyCategoryGroup tailorMadeAssemblyCategoryGroup) { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResult( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResult(simpleAssemblyCategoryGroup), @@ -259,7 +259,7 @@ public void CreateWithProbability_SerializableFailureMechanismSectionCollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), null, new SerializableFailureMechanism(), new ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability( @@ -278,7 +278,7 @@ public void CreateWithProbability_SerializableFailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), null, new ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability( @@ -297,7 +297,7 @@ public void CreateWithProbability_SectionResultNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), new SerializableFailureMechanism(), (ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability) null); @@ -311,7 +311,7 @@ public void CreateWithProbability_WithValidArgumentsAndAllAssemblyTypesHaveResults_ReturnsAggregatedSerializableFailureMechanismSectionAssembly() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResultWithProbability(10), @@ -373,7 +373,7 @@ FailureMechanismSectionAssemblyCategoryGroup tailorMadeAssemblyCategoryGroup) { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResultWithProbability( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResultWithProbability(simpleAssemblyCategoryGroup), @@ -457,7 +457,7 @@ public void CreateWithoutDetailedAssembly_SerializableFailureMechanismSectionCollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), null, new SerializableFailureMechanism(), new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( @@ -475,7 +475,7 @@ public void CreateWithoutDetailedAssembly_SerializableFailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), null, new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( @@ -493,7 +493,7 @@ public void CreateWithoutDetailedAssembly_SectionResultNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => AggregatedSerializableFailureMechanismSectionAssemblyCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), new SerializableFailureMechanism(), (ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly) null); @@ -507,7 +507,7 @@ public void CreateWithoutDetailedAssembly_WithValidArgumentsAndAllAssemblyTypesHaveResults_ReturnsAggregatedSerializableFailureMechanismSectionAssembly() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResult(10), @@ -562,7 +562,7 @@ FailureMechanismSectionAssemblyCategoryGroup tailorMadeAssemblyCategoryGroup) { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); var sectionResult = new ExportableAggregatedFailureMechanismSectionAssemblyResultWithoutDetailedAssembly( ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(), CreateSectionAssemblyResultWithProbability(simpleAssemblyCategoryGroup), Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableAssessmentProcessCreatorTest.cs =================================================================== diff -u -r34e32192079a472e5ac5e742455fd9e9bd84772e -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableAssessmentProcessCreatorTest.cs (.../SerializableAssessmentProcessCreatorTest.cs) (revision 34e32192079a472e5ac5e742455fd9e9bd84772e) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableAssessmentProcessCreatorTest.cs (.../SerializableAssessmentProcessCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -53,7 +53,7 @@ string.Empty, CreateGeometry()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); // Call SerializableAssessmentProcess serializableProcess = Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismCreatorTest.cs =================================================================== diff -u -r95cc9e09a2390a216a0e933dc07841bcc67d5751 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismCreatorTest.cs (.../SerializableFailureMechanismCreatorTest.cs) (revision 95cc9e09a2390a216a0e933dc07841bcc67d5751) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismCreatorTest.cs (.../SerializableFailureMechanismCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -52,7 +52,7 @@ public void CreateWithFailureMechanismAssemblyResult_SerializableTotalAssemblyNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismCreator.Create(new IdentifierGenerator(), null, CreateExportableFailureMechanismWithoutProbability()); @@ -65,7 +65,7 @@ public void CreateWithFailureMechanismAssemblyResult_FailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismCreator.Create(new IdentifierGenerator(), CreateSerializableTotalAssembly("id"), (ExportableFailureMechanism) null); @@ -78,7 +78,7 @@ public void Create_WithFailureMechanismAssemblyResult_ReturnsSerializableFailureMechanism() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); ExportableFailureMechanism failureMechanism = CreateExportableFailureMechanismWithoutProbability(); const string totalAssemblyId = "totalAssemblyId"; @@ -116,7 +116,7 @@ public void CreateWithFailureMechanismAssemblyResultWithProbability_SerializableTotalAssemblyNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismCreator.Create(new IdentifierGenerator(), null, CreateExportableFailureMechanismWithProbability()); @@ -129,7 +129,7 @@ public void CreateWithFailureMechanismAssemblyResultWithProbability_FailureMechanismNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismCreator.Create(new IdentifierGenerator(), CreateSerializableTotalAssembly("id"), (ExportableFailureMechanism) null); @@ -142,7 +142,7 @@ public void Create_WithFailureMechanismAssemblyResultWithProbability_ReturnsSerializableFailureMechanism() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); ExportableFailureMechanism failureMechanism = CreateExportableFailureMechanismWithProbability(); const string totalAssemblyId = "totalAssemblyId"; Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismSectionCreatorTest.cs =================================================================== diff -u -ra56e1107988e0b552f2ba371935b967b34fdc332 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismSectionCreatorTest.cs (.../SerializableFailureMechanismSectionCreatorTest.cs) (revision a56e1107988e0b552f2ba371935b967b34fdc332) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableFailureMechanismSectionCreatorTest.cs (.../SerializableFailureMechanismSectionCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -49,7 +49,7 @@ public void Create_CollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new IdentifierGenerator(), null, ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection()); @@ -62,7 +62,7 @@ public void Create_SectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), null); @@ -78,7 +78,7 @@ const string collectionId = "collectionId"; var collection = new SerializableFailureMechanismSectionCollection(collectionId, new SerializableFailureMechanism()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); ExportableFailureMechanismSection section = ExportableFailureMechanismSectionTestFactory.CreateExportableFailureMechanismSection(); // Call @@ -106,7 +106,7 @@ public void CreateWithCombinedAssemblySection_CollectionNull_ThrowsArgumentNullException() { // Call - TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new IdentifierGenerator(), null, ExportableFailureMechanismSectionTestFactory.CreateExportableCombinedFailureMechanismSection()); @@ -122,7 +122,7 @@ var section = (ExportableCombinedFailureMechanismSection) null; // Call - TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new UniqueIdentifierGenerator(), + TestDelegate call = () => SerializableFailureMechanismSectionCreator.Create(new IdentifierGenerator(), new SerializableFailureMechanismSectionCollection(), section); @@ -138,7 +138,7 @@ const string collectionId = "collectionId"; var collection = new SerializableFailureMechanismSectionCollection(collectionId, new SerializableFailureMechanism()); - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); ExportableCombinedFailureMechanismSection section = ExportableFailureMechanismSectionTestFactory.CreateExportableCombinedFailureMechanismSection(); // Call Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableTotalAssemblyResultCreatorTest.cs =================================================================== diff -u -r34e32192079a472e5ac5e742455fd9e9bd84772e -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableTotalAssemblyResultCreatorTest.cs (.../SerializableTotalAssemblyResultCreatorTest.cs) (revision 34e32192079a472e5ac5e742455fd9e9bd84772e) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Creators/SerializableTotalAssemblyResultCreatorTest.cs (.../SerializableTotalAssemblyResultCreatorTest.cs) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -50,7 +50,7 @@ public void Create_WithValidArguments_ReturnsSerializableTotalAssemblyResult() { // Setup - var idGenerator = new UniqueIdentifierGenerator(); + var idGenerator = new IdentifierGenerator(); const string assessmentProcessId = "assessmentProcessId"; var serializableAssessmentProcess = new SerializableAssessmentProcess(assessmentProcessId, new SerializableAssessmentSection()); Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Helpers/IdentifierGeneratorTest.cs =================================================================== diff -u --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Helpers/IdentifierGeneratorTest.cs (revision 0) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Helpers/IdentifierGeneratorTest.cs (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -0,0 +1,153 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using System.Linq; +using Core.Common.Base.Geometry; +using Core.Common.TestUtil; +using NUnit.Framework; +using Ringtoets.Integration.IO.Assembly; +using Ringtoets.Integration.IO.Helpers; +using Ringtoets.Integration.IO.TestUtil; + +namespace Ringtoets.Integration.IO.Test.Helpers +{ + [TestFixture] + public class IdentifierGeneratorTest + { + [Test] + [TestCase(null)] + [TestCase("")] + [TestCase(" ")] + public void GetNewId_InvalidPrefix_ThrowsArgumentException(string invalidPrefix) + { + // Setup + var generator = new IdentifierGenerator(); + + // Call + TestDelegate call = () => generator.GetNewId(invalidPrefix); + + // Assert + const string expectedMessage = "'prefix' is null, empty or consists of whitespace."; + TestHelper.AssertThrowsArgumentExceptionAndTestMessage(call, expectedMessage); + } + + [Test] + public void GetNewId_WithPrefix_ReturnsExpectedValue() + { + // Setup + const string prefix = "prefix"; + var generator = new IdentifierGenerator(); + + // Call + string id = generator.GetNewId(prefix); + + // Assert + Assert.AreEqual($"{prefix}.0", id); + } + + [Test] + public void GivenGeneratedId_WhenGetNewIdCalledWithSamePrefix_ThenNewIdGenerated() + { + // Given + const string prefix = "prefix"; + var generator = new IdentifierGenerator(); + string currentId = generator.GetNewId(prefix); + + // Precondition + Assert.AreEqual($"{prefix}.0", currentId); + + // When + string[] generatedIds = + { + generator.GetNewId(prefix), + generator.GetNewId(prefix) + }; + + // Then + CollectionAssert.AreEqual(new[] + { + $"{prefix}.1", + $"{prefix}.2" + }, generatedIds); + } + + [Test] + public void GivenGeneratedId_WhenGetNewIdCalledWithDifferentPrefix_ThenNewIdGenerated() + { + // Given + const string prefix = "prefix"; + var generator = new IdentifierGenerator(); + generator.GetNewId(prefix); + + // Precondition + Assert.AreEqual($"{prefix}.1", generator.GetNewId(prefix)); + + const string newPrefix = "NewPrefix"; + + // When + string newPrefixId = generator.GetNewId(newPrefix); + + // Then + Assert.AreEqual($"{newPrefix}.0", newPrefixId); + } + + [Test] + public void GenerateId_AssessmentSectionNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => IdentifierGenerator.GeneratedId(null); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("assessmentSection", exception.ParamName); + } + + [Test] + public void GenerateId_WithAssessmentSection_GeneratesId() + { + // Setup + const string assessmentSectionId = "AssessmentSectionId"; + ExportableAssessmentSection assessmentSection = CreateAssessmentSection(assessmentSectionId); + + var generator = new IdentifierGenerator(); + + // Call + string generatedId = IdentifierGenerator.GeneratedId(assessmentSection); + + // Assert + Assert.AreEqual($"Wks.{assessmentSection.Id}", generatedId); + } + + private static ExportableAssessmentSection CreateAssessmentSection(string id) + { + return new ExportableAssessmentSection(string.Empty, + id, + Enumerable.Empty(), + ExportableAssessmentSectionAssemblyResultTestFactory.CreateResult(), + ExportableFailureMechanismAssemblyResultTestFactory.CreateResultWithProbability(), + ExportableFailureMechanismAssemblyResultTestFactory.CreateResultWithoutProbability(), + Enumerable.Empty>(), + Enumerable.Empty>(), + Enumerable.Empty()); + } + } +} \ No newline at end of file Fisheye: Tag 3265c6b7b2cb65fd707b885d698bf106eb2a3307 refers to a dead (removed) revision in file `Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Helpers/UniqueIdentifierGeneratorTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj =================================================================== diff -u -ref362ecdfec2d2c0efb1696ba1bba1d731a66256 -r3265c6b7b2cb65fd707b885d698bf106eb2a3307 --- Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj (.../Ringtoets.Integration.IO.Test.csproj) (revision ef362ecdfec2d2c0efb1696ba1bba1d731a66256) +++ Ringtoets/Integration/test/Ringtoets.Integration.IO.Test/Ringtoets.Integration.IO.Test.csproj (.../Ringtoets.Integration.IO.Test.csproj) (revision 3265c6b7b2cb65fd707b885d698bf106eb2a3307) @@ -85,7 +85,7 @@ - +