Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj (.../Application.Ringtoets.Storage.csproj) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj (.../Application.Ringtoets.Storage.csproj) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -74,7 +74,7 @@
RingtoetsEntities.tt
-
+
RingtoetsEntities.tt
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Converters/AssessmentSectionConverter.cs
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Converters/AssessmentSectionConverter.cs (.../AssessmentSectionConverter.cs) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Converters/AssessmentSectionConverter.cs (.../AssessmentSectionConverter.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -21,6 +21,8 @@
using System;
using Application.Ringtoets.Storage.DbContext;
+
+using Ringtoets.Common.Data;
using Ringtoets.HydraRing.Data;
using Ringtoets.Integration.Data;
@@ -49,6 +51,7 @@
assessmentSection.StorageId = entity.AssessmentSectionEntityId;
assessmentSection.Name = entity.Name ?? string.Empty;
assessmentSection.FailureMechanismContribution.Norm = entity.Norm;
+ assessmentSection.ChangeComposition(GetAssessmentSectionComposition(entity.Composition));
if (entity.HydraulicDatabaseLocation != null && entity.HydraulicDatabaseVersion != null)
{
@@ -62,6 +65,11 @@
return assessmentSection;
}
+ private AssessmentSectionComposition GetAssessmentSectionComposition(short composition)
+ {
+ return (AssessmentSectionComposition)composition;
+ }
+
///
/// Converts to .
///
@@ -83,6 +91,7 @@
}
entity.AssessmentSectionEntityId = modelObject.StorageId;
entity.Name = modelObject.Name;
+ entity.Composition = (short)modelObject.Composition;
entity.Norm = modelObject.FailureMechanismContribution.Norm;
if (modelObject.HydraulicBoundaryDatabase != null)
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/AssessmentSectionEntity.cs
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/AssessmentSectionEntity.cs (.../AssessmentSectionEntity.cs) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/AssessmentSectionEntity.cs (.../AssessmentSectionEntity.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -50,6 +50,7 @@
public int Order { get; set; }
public string HydraulicDatabaseVersion { get; set; }
public string HydraulicDatabaseLocation { get; set; }
+ public short Composition { get; set; }
public virtual ProjectEntity ProjectEntity { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/DatabaseStructure.sql
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/DatabaseStructure.sql (.../DatabaseStructure.sql) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/DatabaseStructure.sql (.../DatabaseStructure.sql) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -1,12 +1,12 @@
/* ---------------------------------------------------- */
-/* Generated by Enterprise Architect Version 12.1 */
-/* Created On : 31-mrt-2016 13:21:34 */
+/* Generated by Enterprise Architect Version 12.0 */
+/* Created On : 06-apr-2016 9:02:20 */
/* DBMS : SQLite */
/* ---------------------------------------------------- */
/* Drop Tables */
-DROP TABLE IF EXISTS 'Version'
+DROP TABLE IF EXISTS 'VersionEntity'
;
DROP TABLE IF EXISTS 'ProjectEntity'
@@ -26,7 +26,7 @@
/* Create Tables with Primary and Foreign Keys, Check and Unique Constraints */
-CREATE TABLE 'Version'
+CREATE TABLE 'VersionEntity'
(
'VersionId' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
'FromVersion' TEXT,
@@ -51,7 +51,8 @@
'Order' INT (4) NOT NULL,
'HydraulicDatabaseVersion' TEXT,
'HydraulicDatabaseLocation' TEXT,
- CONSTRAINT 'FK_AssessmentSection_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade
+ 'Composition' SMALLINT NOT NULL, -- Enum: Dike = 0, Dune = 1, DikeAndDune = 2
+ CONSTRAINT 'FK_AssessmentSectionEntity_ProjectEntity' FOREIGN KEY ('ProjectEntityId') REFERENCES 'ProjectEntity' ('ProjectEntityId') ON DELETE Cascade ON UPDATE Cascade
)
;
@@ -61,7 +62,7 @@
'AssessmentSectionEntityId' INTEGER NOT NULL,
'FailureMechanismType' SMALLINT NOT NULL, -- Enumerator for different failure mechanism types (piping, macrostability, dunes, etc)
CONSTRAINT 'FK_FailureMechanismEntity_AssessmentSectionEntity' FOREIGN KEY ('AssessmentSectionEntityId') REFERENCES 'AssessmentSectionEntity' ('AssessmentSectionEntityId') ON DELETE Cascade ON UPDATE Cascade,
- CONSTRAINT 'UI_AS_FMT' UNIQUE ('FailureMechanismType','AssessmentSectionEntityId')
+ CONSTRAINT 'UI_AssessmentSectionEntityId_FailureMechanismType' UNIQUE ('FailureMechanismType','AssessmentSectionEntityId')
)
;
@@ -91,7 +92,7 @@
/* Create Indexes and Triggers */
-CREATE INDEX 'IXFK_AssessmentSection_ProjectEntity'
+CREATE INDEX 'IXFK_AssessmentSectionEntity_ProjectEntity'
ON 'AssessmentSectionEntity' ('ProjectEntityId' ASC)
;
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.Context.cs
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.Context.cs (.../RingtoetsEntities.Context.cs) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.Context.cs (.../RingtoetsEntities.Context.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -57,6 +57,6 @@
public virtual DbSet HydraulicLocationEntities { get; set; }
public virtual DbSet ProjectEntities { get; set; }
public virtual DbSet ReferenceLinePointEntities { get; set; }
- public virtual DbSet Versions { get; set; }
+ public virtual DbSet VersionEntities { get; set; }
}
}
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx (.../RingtoetsEntities.edmx) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx (.../RingtoetsEntities.edmx) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -16,6 +16,7 @@
+
@@ -54,7 +55,7 @@
-
+
@@ -117,7 +118,7 @@
-
+
@@ -145,7 +146,7 @@
-
+
@@ -174,6 +175,7 @@
+
@@ -220,7 +222,7 @@
-
+
@@ -286,6 +288,7 @@
+
@@ -337,9 +340,9 @@
-
-
-
+
+
+
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx.diagram
===================================================================
diff -u -r8b5a6f938fe2b04cd78623649df37580e145055f -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx.diagram (.../RingtoetsEntities.edmx.diagram) (revision 8b5a6f938fe2b04cd78623649df37580e145055f)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/RingtoetsEntities.edmx.diagram (.../RingtoetsEntities.edmx.diagram) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -10,7 +10,7 @@
-
+
Fisheye: Tag 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f refers to a dead (removed) revision in file `Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/Version.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/VersionEntity.cs
===================================================================
diff -u
--- Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/VersionEntity.cs (revision 0)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/VersionEntity.cs (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -0,0 +1,43 @@
+// Copyright (C) Stichting Deltares 2016. 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.
+
+//------------------------------------------------------------------------------
+//
+// This code was generated from a template.
+//
+// Manual changes to this file may cause unexpected behavior in your application.
+// Manual changes to this file will be overwritten if the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Application.Ringtoets.Storage.DbContext
+{
+ using System;
+ using System.Collections.Generic;
+
+ public partial class VersionEntity
+ {
+ public long VersionId { get; set; }
+ public string FromVersion { get; set; }
+ public string ToVersion { get; set; }
+ public Nullable Timestamp { get; set; }
+ }
+}
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/StorageSqLite.cs
===================================================================
diff -u -rbbe8871cfabad25988ec8f94115da2c485267118 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/src/Application.Ringtoets.Storage/StorageSqLite.cs (.../StorageSqLite.cs) (revision bbe8871cfabad25988ec8f94115da2c485267118)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/StorageSqLite.cs (.../StorageSqLite.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -292,7 +292,7 @@
try
{
dbContext.Database.Initialize(true);
- dbContext.Versions.Load();
+ dbContext.VersionEntities.Load();
}
catch (Exception exception)
{
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Converters/AssessmentSectionConverterTest.cs
===================================================================
diff -u -r903f178ab0fc6f4b6f7f3ac56a7fb9b9dd9dca95 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Converters/AssessmentSectionConverterTest.cs (.../AssessmentSectionConverterTest.cs) (revision 903f178ab0fc6f4b6f7f3ac56a7fb9b9dd9dca95)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Converters/AssessmentSectionConverterTest.cs (.../AssessmentSectionConverterTest.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -20,9 +20,13 @@
// All rights reserved.
using System;
+using System.Linq;
+
using Application.Ringtoets.Storage.Converters;
using Application.Ringtoets.Storage.DbContext;
using NUnit.Framework;
+
+using Ringtoets.Common.Data;
using Ringtoets.HydraRing.Data;
using Ringtoets.Integration.Data;
@@ -55,7 +59,10 @@
}
[Test]
- public void ConvertEntityToModel_ValidAssessmentSectionEntity_ReturnsTheAssessmentSectionEntityAsAssessmentSection()
+ [TestCase(AssessmentSectionComposition.Dike)]
+ [TestCase(AssessmentSectionComposition.Dune)]
+ [TestCase(AssessmentSectionComposition.DikeAndDune)]
+ public void ConvertEntityToModel_ValidAssessmentSectionEntity_ReturnsTheAssessmentSectionEntityAsAssessmentSection(AssessmentSectionComposition composition)
{
// Setup
const long storageId = 1234L;
@@ -71,7 +78,8 @@
ProjectEntityId = projectId,
Norm = norm,
HydraulicDatabaseVersion = hydraulicDatabaseVersion,
- HydraulicDatabaseLocation = hydraulicDatabasePath
+ HydraulicDatabaseLocation = hydraulicDatabasePath,
+ Composition = (short)composition
};
AssessmentSectionConverter converter = new AssessmentSectionConverter();
@@ -82,7 +90,14 @@
Assert.AreNotEqual(assessmentSectionEntity, assessmentSection);
Assert.AreEqual(storageId, assessmentSection.StorageId);
Assert.AreEqual(name, assessmentSection.Name);
+ Assert.AreEqual(composition, assessmentSection.Composition);
Assert.AreEqual(norm, assessmentSection.FailureMechanismContribution.Norm);
+ double expectedFirstDistributionItemContribution = composition == AssessmentSectionComposition.Dune ?
+ 0.0 : 24.0;
+ Assert.AreEqual(expectedFirstDistributionItemContribution, assessmentSection.FailureMechanismContribution.Distribution.First().Contribution);
+ double expectedLastDistributionItemContribution = composition == AssessmentSectionComposition.DikeAndDune ?
+ 20.0 : 30.0;
+ Assert.AreEqual(expectedLastDistributionItemContribution, assessmentSection.FailureMechanismContribution.Distribution.Last().Contribution);
Assert.AreEqual(hydraulicDatabaseVersion, assessmentSection.HydraulicBoundaryDatabase.Version);
Assert.AreEqual(hydraulicDatabasePath, assessmentSection.HydraulicBoundaryDatabase.FilePath);
}
@@ -116,7 +131,10 @@
}
[Test]
- public void ConvertModelToEntity_ValidAssessmentSection_UpdatesTheAssessmentSectionAsAssessmentSectionEntity()
+ [TestCase(AssessmentSectionComposition.Dike)]
+ [TestCase(AssessmentSectionComposition.Dune)]
+ [TestCase(AssessmentSectionComposition.DikeAndDune)]
+ public void ConvertModelToEntity_ValidAssessmentSection_UpdatesTheAssessmentSectionAsAssessmentSectionEntity(AssessmentSectionComposition composition)
{
// Setup
const long storageId = 1234L;
@@ -139,6 +157,8 @@
FilePath = hydraulicDatabasePath
}
};
+ assessmentSection.ChangeComposition(composition);
+
AssessmentSectionEntity assessmentSectionEntity = new AssessmentSectionEntity
{
ProjectEntityId = projectId
@@ -153,6 +173,7 @@
Assert.AreEqual(storageId, assessmentSectionEntity.AssessmentSectionEntityId);
Assert.AreEqual(projectId, assessmentSectionEntity.ProjectEntityId);
Assert.AreEqual(name, assessmentSectionEntity.Name);
+ Assert.AreEqual((short)composition, assessmentSectionEntity.Composition);
Assert.AreEqual(norm, assessmentSectionEntity.Norm);
Assert.AreEqual(hydraulicDatabaseVersion, assessmentSectionEntity.HydraulicDatabaseVersion);
Assert.AreEqual(hydraulicDatabasePath, assessmentSectionEntity.HydraulicDatabaseLocation);
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Persistors/AssessmentSectionPersistorTest.cs
===================================================================
diff -u -rc116b4635603c6d5bbdedb837f68fd3839ece6ca -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Persistors/AssessmentSectionPersistorTest.cs (.../AssessmentSectionPersistorTest.cs) (revision c116b4635603c6d5bbdedb837f68fd3839ece6ca)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Persistors/AssessmentSectionPersistorTest.cs (.../AssessmentSectionPersistorTest.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -29,6 +29,8 @@
using Application.Ringtoets.Storage.TestUtil;
using NUnit.Framework;
using Rhino.Mocks;
+
+using Ringtoets.Common.Data;
using Ringtoets.HydraRing.Data;
using Ringtoets.Integration.Data;
@@ -110,6 +112,7 @@
const long otherHydraulicDatabaseLocationStorageId = 4321L;
const decimal otherHydraulicDatabaseLocationX = 3927;
const decimal otherHydraulicDatabaseLocationY = 372;
+ const AssessmentSectionComposition composition = AssessmentSectionComposition.DikeAndDune;
var ringtoetsEntities = mockRepository.Stub();
AssessmentSectionPersistor persistor = new AssessmentSectionPersistor(ringtoetsEntities);
@@ -123,6 +126,7 @@
}
},
HydraulicDatabaseVersion = hydraulicDatabaseVersion, HydraulicDatabaseLocation = hydraulicDatabasePath,
+ Composition = (short)composition,
HydraulicLocationEntities = new List
{
new HydraulicLocationEntity
@@ -145,6 +149,7 @@
// Assert
Assert.AreEqual(storageId, section.StorageId);
Assert.AreEqual(name, section.Name);
+ Assert.AreEqual(composition, section.Composition);
Assert.AreEqual(norm, section.FailureMechanismContribution.Norm);
Assert.AreEqual(pipingFailureMechanismStorageId, section.Piping.StorageId);
Assert.AreEqual(hydraulicDatabaseVersion, section.HydraulicBoundaryDatabase.Version);
@@ -182,6 +187,7 @@
{
AssessmentSectionEntityId = 1, Name = "test1", Norm = 12,
HydraulicDatabaseVersion = "1.0", HydraulicDatabaseLocation = "temp/test",
+ Composition = (short)AssessmentSectionComposition.Dune,
HydraulicLocationEntities = new List
{
new HydraulicLocationEntity
@@ -194,6 +200,7 @@
{
AssessmentSectionEntityId = 2, Name = "test2", Norm = 22,
HydraulicDatabaseVersion = "2.0", HydraulicDatabaseLocation = "test",
+ Composition = (short)AssessmentSectionComposition.Dike,
HydraulicLocationEntities = new List
{
new HydraulicLocationEntity
@@ -216,6 +223,7 @@
{
Assert.AreEqual(parentNavigationPropertyList[i].AssessmentSectionEntityId, loadedModelsList[i].StorageId);
Assert.AreEqual(parentNavigationPropertyList[i].Name, loadedModelsList[i].Name);
+ Assert.AreEqual((AssessmentSectionComposition)parentNavigationPropertyList[i].Composition, loadedModelsList[i].Composition);
Assert.AreEqual(parentNavigationPropertyList[i].Norm, loadedModelsList[i].FailureMechanismContribution.Norm);
Assert.AreEqual(parentNavigationPropertyList[i].HydraulicDatabaseVersion, loadedModelsList[i].HydraulicBoundaryDatabase.Version);
Assert.AreEqual(parentNavigationPropertyList[i].HydraulicDatabaseLocation, loadedModelsList[i].HydraulicBoundaryDatabase.FilePath);
@@ -272,7 +280,10 @@
}
[Test]
- public void InsertModel_EmptyParentNavigationPropertySingleAssessmentSectionWithoutStorageId_AssessmentSectionAsEntityInParentNavigationProperty()
+ [TestCase(AssessmentSectionComposition.Dike)]
+ [TestCase(AssessmentSectionComposition.Dune)]
+ [TestCase(AssessmentSectionComposition.DikeAndDune)]
+ public void InsertModel_EmptyParentNavigationPropertySingleAssessmentSectionWithoutStorageId_AssessmentSectionAsEntityInParentNavigationProperty(AssessmentSectionComposition composition)
{
// Setup
const string name = "test";
@@ -292,6 +303,7 @@
},
HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
};
+ assessmentSection.ChangeComposition(composition);
AssessmentSectionPersistor persistor = new AssessmentSectionPersistor(ringtoetsEntities);
@@ -305,6 +317,7 @@
Assert.AreEqual(0, entity.AssessmentSectionEntityId);
Assert.AreEqual(name, entity.Name);
Assert.AreEqual(norm, entity.Norm);
+ Assert.AreEqual((short)composition, entity.Composition);
mockRepository.VerifyAll();
}
@@ -443,24 +456,24 @@
{
// Setup
const string name = "test";
+ AssessmentSectionComposition composition = AssessmentSectionComposition.DikeAndDune;
const int norm = 30000;
var ringtoetsEntities = RingtoetsEntitiesHelper.Create(mockRepository);
mockRepository.ReplayAll();
AssessmentSectionPersistor persistor = new AssessmentSectionPersistor(ringtoetsEntities);
ICollection parentNavigationProperty = new List();
- AssessmentSection assessmentSection =
- new AssessmentSection
+ AssessmentSection assessmentSection = new AssessmentSection
+ {
+ Name = name,
+ FailureMechanismContribution =
{
- Name = name,
- FailureMechanismContribution =
- {
- Norm = norm
- },
- HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
- }
- ;
+ Norm = norm
+ },
+ HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
+ };
+ assessmentSection.ChangeComposition(composition);
// Call
persistor.UpdateModel(parentNavigationProperty, assessmentSection, 0);
@@ -471,6 +484,7 @@
var entity = parentNavigationPropertyList[0];
Assert.AreEqual(0, entity.AssessmentSectionEntityId);
Assert.AreEqual(name, entity.Name);
+ Assert.AreEqual((short)composition, entity.Composition);
Assert.AreEqual(norm, entity.Norm);
mockRepository.VerifyAll();
@@ -577,6 +591,7 @@
// Setup
const string name = "test";
const long storageId = 1234L;
+ AssessmentSectionComposition composition = AssessmentSectionComposition.DikeAndDune;
const int norm = 30000;
var ringtoetsEntities = RingtoetsEntitiesHelper.Create(mockRepository);
mockRepository.ReplayAll();
@@ -587,7 +602,8 @@
{
AssessmentSectionEntityId = storageId,
Name = "old name",
- Norm = 1
+ Norm = 1,
+ Composition = (short)AssessmentSectionComposition.Dune
}
};
AssessmentSection assessmentSection = new AssessmentSection
@@ -600,6 +616,7 @@
},
HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
};
+ assessmentSection.ChangeComposition(composition);
// Call
persistor.UpdateModel(parentNavigationProperty, assessmentSection, 0);
@@ -610,6 +627,7 @@
var entity = parentNavigationPropertyList[0];
Assert.AreEqual(storageId, entity.AssessmentSectionEntityId);
Assert.AreEqual(name, entity.Name);
+ Assert.AreEqual((short)composition, entity.Composition);
Assert.AreEqual(norm, entity.Norm);
mockRepository.VerifyAll();
@@ -621,6 +639,7 @@
// Setup
const string name = "UpdatedName";
const long storageId = 1234L;
+ AssessmentSectionComposition composition = AssessmentSectionComposition.Dike;
const int norm = 30000;
var ringtoetsEntities = RingtoetsEntitiesHelper.Create(mockRepository);
@@ -638,7 +657,8 @@
{
AssessmentSectionEntityId = storageId,
Name = "Entity to update",
- Norm = 1
+ Norm = 1,
+ Composition = (short)AssessmentSectionComposition.Dune
}
};
@@ -654,6 +674,7 @@
},
HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
};
+ assessmentSection.ChangeComposition(composition);
// Call
persistor.UpdateModel(parentNavigationProperty, assessmentSection, 0);
@@ -664,6 +685,7 @@
Assert.IsInstanceOf(entity);
Assert.AreEqual(storageId, entity.AssessmentSectionEntityId);
Assert.AreEqual(name, entity.Name);
+ Assert.AreEqual((short)composition, entity.Composition);
Assert.AreEqual(norm, entity.Norm);
mockRepository.VerifyAll();
@@ -774,6 +796,7 @@
// Setup
const string name = "test";
const long storageId = 1234L;
+ AssessmentSectionComposition composition = AssessmentSectionComposition.DikeAndDune;
const int norm = 30000;
AssessmentSectionEntity entityToUpdate = new AssessmentSectionEntity
{
@@ -809,7 +832,7 @@
StorageId = storageId,
HydraulicBoundaryDatabase = new HydraulicBoundaryDatabase()
};
- mockRepository.ReplayAll();
+ assessmentSection.ChangeComposition(composition);
TestDelegate updateTest = () => persistor.UpdateModel(parentNavigationProperty, assessmentSection, 0);
Assert.DoesNotThrow(updateTest, "Precondition failed: Update should not throw exception.");
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/RingtoetsDatabaseCreatorTest.cs
===================================================================
diff -u -r2ae1c9433c3c28b32105b9778b682b5e512a0f00 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/RingtoetsDatabaseCreatorTest.cs (.../RingtoetsDatabaseCreatorTest.cs) (revision 2ae1c9433c3c28b32105b9778b682b5e512a0f00)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/RingtoetsDatabaseCreatorTest.cs (.../RingtoetsDatabaseCreatorTest.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -34,7 +34,8 @@
private static readonly string pathToStorageProject = Path.Combine(TestHelper.TestDataDirectory, "Application", "Ringtoets", "src", "Application.Ringtoets.Storage");
///
- /// Creates a new Ringtoets.rtd file in the root of the , which is used to auto-generate the database code.
+ /// Creates a new Ringtoets.rtd file in the root of the ,
+ /// which is used to auto-generate the database code.
///
[Test]
public void RingtoetsDatabaseCreator_Explicit_CreatesRingtoetsProjectDatabaseFile()
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/StorageSqLiteTest.cs
===================================================================
diff -u -rc2694ebe86aef7b8ed7c9dd05a55eec101958a96 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/StorageSqLiteTest.cs (.../StorageSqLiteTest.cs) (revision c2694ebe86aef7b8ed7c9dd05a55eec101958a96)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/StorageSqLiteTest.cs (.../StorageSqLiteTest.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -348,7 +348,8 @@
var storage = new StorageSqLite();
var expectedMessage = String.Format(@"Fout bij het schrijven naar bestand '{0}'{1}: {2}", tempRingtoetsFile, "", "Een fout is opgetreden met het updaten van het Ringtoets bestand.");
var expectedInnerExceptionMessage = "An error occurred while executing the command definition. See the inner exception for details.";
- var expectedInnerExceptionInnerExceptionMessage = "SQL logic error or missing database\r\nno such table: ProjectEntity";
+ var expectedInnerExceptionInnerExceptionMessage = "SQL logic error or missing database" + Environment.NewLine +
+ "no such table: ProjectEntity";
using (var fileDisposeHelper = new FileDisposeHelperGarbageCollected(tempRingtoetsFile))
{
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/SqLiteDatabaseHelperTest.cs
===================================================================
diff -u -rc2694ebe86aef7b8ed7c9dd05a55eec101958a96 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/SqLiteDatabaseHelperTest.cs (.../SqLiteDatabaseHelperTest.cs) (revision c2694ebe86aef7b8ed7c9dd05a55eec101958a96)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil.Test/SqLiteDatabaseHelperTest.cs (.../SqLiteDatabaseHelperTest.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -162,7 +162,7 @@
public void GetCorruptSchema_Always_ScriptThatOnlyGeneratesEnoughToPassValidation()
{
// Setup
- const string expectedCreateVersionTable = "CREATE TABLE Version ";
+ const string expectedCreateVersionTable = "CREATE TABLE VersionEntity ";
const string notExpectedCreateProjectEntityTable = "CREATE TABLE ProjectEntity ";
// Call
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/SqLiteDatabaseHelper.cs
===================================================================
diff -u -rc2694ebe86aef7b8ed7c9dd05a55eec101958a96 -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/SqLiteDatabaseHelper.cs (.../SqLiteDatabaseHelper.cs) (revision c2694ebe86aef7b8ed7c9dd05a55eec101958a96)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.TestUtil/SqLiteDatabaseHelper.cs (.../SqLiteDatabaseHelper.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -93,8 +93,8 @@
/// The corrupt databaseschema that will pass validation.
public static string GetCorruptSchema()
{
- return "DROP TABLE IF EXISTS 'Version'; " +
- "CREATE TABLE Version (VersionId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," +
+ return "DROP TABLE IF EXISTS 'VersionEntity'; " +
+ "CREATE TABLE VersionEntity (VersionId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," +
" FromVersion VARCHAR (16), ToVersion VARCHAR (16),Timestamp NUMERIC); ";
}
}
Index: Ringtoets/Common/src/Ringtoets.Common.Data/AssessmentSectionComposition.cs
===================================================================
diff -u -rc8eb333514adae8495778ed16c71c41a6eb4251b -r4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f
--- Ringtoets/Common/src/Ringtoets.Common.Data/AssessmentSectionComposition.cs (.../AssessmentSectionComposition.cs) (revision c8eb333514adae8495778ed16c71c41a6eb4251b)
+++ Ringtoets/Common/src/Ringtoets.Common.Data/AssessmentSectionComposition.cs (.../AssessmentSectionComposition.cs) (revision 4e65fa5d8abdf1c0a9238492cdbcd7d2b3fa2d0f)
@@ -29,14 +29,14 @@
///
/// The assessment section consists only out of 'dike' elements.
///
- Dike,
+ Dike = 0,
///
/// The assessment section consists only out of 'dune' elements.
///
- Dune,
+ Dune = 1,
///
/// The assessment section consists out of a combination of 'dike' and 'dune' elements
///
- DikeAndDune
+ DikeAndDune = 2
}
}
\ No newline at end of file