Index: Core/Components/src/Core.Components.DotSpatial/Converter/FeatureBasedMapDataConverter.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/src/Core.Components.DotSpatial/Converter/FeatureBasedMapDataConverter.cs (.../FeatureBasedMapDataConverter.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/src/Core.Components.DotSpatial/Converter/FeatureBasedMapDataConverter.cs (.../FeatureBasedMapDataConverter.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -272,37 +272,17 @@ /// The criteria to convert to an expression. /// The filter expression based on the /// and . - /// Thrown when the + /// Thrown when the /// cannot be used to create a filter expression. - private static string CreateFilterExpression(int attributeIndex, ICriteria criteria) + private static string CreateFilterExpression(int attributeIndex, ValueCriteria criteria) { - var valueCriteria = criteria as ValueCriteria; - if (valueCriteria != null) - { - return CreateValueFilterExpression(attributeIndex, valueCriteria); - } - - throw new NotSupportedException($"Can't convert a {nameof(ICriteria)} of type {criteria.GetType()}"); - } - - /// - /// Creates a filter expression based for an attribute and the value criteria to apply. - /// - /// The index of the attribute in the metadata table. - /// The criteria to convert to an expression. - /// The filter expression based on the - /// and . - /// Thrown when the - /// cannot be used to create a filter expression. - private static string CreateValueFilterExpression(int attributeIndex, ValueCriteria valueCriteria) - { - ValueCriteriaOperator valueOperator = valueCriteria.ValueOperator; + ValueCriteriaOperator valueOperator = criteria.ValueOperator; switch (valueOperator) { case ValueCriteriaOperator.EqualValue: - return $"[{attributeIndex}] = '{valueCriteria.Value}'"; + return $"[{attributeIndex}] = '{criteria.Value}'"; case ValueCriteriaOperator.UnequalValue: - return $"NOT [{attributeIndex}] = '{valueCriteria.Value}'"; + return $"NOT [{attributeIndex}] = '{criteria.Value}'"; default: throw new NotSupportedException($"The enum value {nameof(ValueCriteriaOperator)}.{valueOperator} is not supported."); } Index: Core/Components/src/Core.Components.Gis/Core.Components.Gis.csproj =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/src/Core.Components.Gis/Core.Components.Gis.csproj (.../Core.Components.Gis.csproj) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/src/Core.Components.Gis/Core.Components.Gis.csproj (.../Core.Components.Gis.csproj) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -13,7 +13,6 @@ - Index: Core/Components/src/Core.Components.Gis/Theme/CategoryTheme.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/src/Core.Components.Gis/Theme/CategoryTheme.cs (.../CategoryTheme.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/src/Core.Components.Gis/Theme/CategoryTheme.cs (.../CategoryTheme.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -36,7 +36,7 @@ /// The criteria belonging to the category. /// Thrown when /// is null. - public CategoryTheme(Color themeColor, ICriteria criteria) + public CategoryTheme(Color themeColor, ValueCriteria criteria) { if (criteria == null) { @@ -55,6 +55,6 @@ /// /// Gets the criteria that is associated with the category theme. /// - public ICriteria Criteria { get; } + public ValueCriteria Criteria { get; } } } \ No newline at end of file Fisheye: Tag eefc89546a801a4083259094a763fe7fd93b6c47 refers to a dead (removed) revision in file `Core/Components/src/Core.Components.Gis/Theme/ICriteria.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Components/src/Core.Components.Gis/Theme/ValueCriteria.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/src/Core.Components.Gis/Theme/ValueCriteria.cs (.../ValueCriteria.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/src/Core.Components.Gis/Theme/ValueCriteria.cs (.../ValueCriteria.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -27,7 +27,7 @@ /// /// Criteria to be used for equal or unequal values. /// - public class ValueCriteria : ICriteria + public class ValueCriteria { /// /// Creates a new instance of . Index: Core/Components/test/Core.Components.DotSpatial.Test/Converter/FeatureBasedMapDataConverterTest.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.DotSpatial.Test/Converter/FeatureBasedMapDataConverterTest.cs (.../FeatureBasedMapDataConverterTest.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/test/Core.Components.DotSpatial.Test/Converter/FeatureBasedMapDataConverterTest.cs (.../FeatureBasedMapDataConverterTest.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -513,59 +513,6 @@ } [Test] - public void ConvertLayerProperties_MapDataWithMapThemeAndUnsupportedCriteria_ThrowsNotSupportedException() - { - // Setup - var random = new Random(21); - const string metadataAttributeName = "Meta"; - - var featureScheme = new PointScheme(); - var defaultCategory = new PointCategory(); - var category = new PointCategory(); - - var unsupportedCriteria = new TestCriteria(); - var theme = new MapTheme(metadataAttributeName, new[] - { - new CategoryTheme(Color.FromKnownColor(random.NextEnum()), - unsupportedCriteria) - }); - - var mapData = new TestFeatureBasedMapData("test data") - { - Features = new[] - { - new MapFeature(Enumerable.Empty()) - { - MetaData = - { - { - metadataAttributeName, new object() - } - } - } - }, - MapTheme = theme - }; - - var testConverter = new TestFeatureBasedMapDataConverter - { - CreatedFeatureScheme = featureScheme, - CreatedDefaultCategory = defaultCategory, - CreatedCategory = category - }; - - var mapLayer = new TestFeatureLayer(); - - // Call - TestDelegate call = () => testConverter.ConvertLayerProperties(mapData, mapLayer); - - // Assert - var exception = Assert.Throws(call); - string expectedMessage = $"Can't convert a {nameof(ICriteria)} of type {unsupportedCriteria.GetType()}"; - Assert.AreEqual(expectedMessage, exception.Message); - } - - [Test] public void ConvertLayerProperties_MapDataWithMapThemeAndMetadataNameNotInFatures_ThrowsKeyNotFoundException() { // Setup Index: Core/Components/test/Core.Components.Gis.Test/Theme/CategoryThemeTest.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.Gis.Test/Theme/CategoryThemeTest.cs (.../CategoryThemeTest.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/test/Core.Components.Gis.Test/Theme/CategoryThemeTest.cs (.../CategoryThemeTest.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -50,11 +50,10 @@ public void Constructor_ValidArguments_ReturnsExpectedProperties() { // Setup - var mocks = new MockRepository(); - var criteria = mocks.Stub(); - mocks.ReplayAll(); - var random = new Random(21); + var criteria = new ValueCriteria(random.NextEnumValue(), + random.NextDouble()); + Color themeColor = Color.FromKnownColor(random.NextEnumValue()); // Call @@ -63,7 +62,6 @@ // Assert Assert.AreEqual(themeColor, category.Color); Assert.AreSame(criteria, category.Criteria); - mocks.VerifyAll(); } } } \ No newline at end of file Index: Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriteriaTest.cs =================================================================== diff -u -r24d0467d90ae44ab5630a29f761f4e33ced2a5f4 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriteriaTest.cs (.../ValueCriteriaTest.cs) (revision 24d0467d90ae44ab5630a29f761f4e33ced2a5f4) +++ Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriteriaTest.cs (.../ValueCriteriaTest.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -42,7 +42,6 @@ var criteria = new ValueCriteria(valueOperator, value); // Assert - Assert.IsInstanceOf(criteria); Assert.AreEqual(valueOperator, criteria.ValueOperator); Assert.AreEqual(value, criteria.Value); } Index: Core/Components/test/Core.Components.Gis.TestUtil.Test/Core.Components.Gis.TestUtil.Test.csproj =================================================================== diff -u -r3c41a03f6a1173872af5d8507465e291f9e3f8f2 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.Gis.TestUtil.Test/Core.Components.Gis.TestUtil.Test.csproj (.../Core.Components.Gis.TestUtil.Test.csproj) (revision 3c41a03f6a1173872af5d8507465e291f9e3f8f2) +++ Core/Components/test/Core.Components.Gis.TestUtil.Test/Core.Components.Gis.TestUtil.Test.csproj (.../Core.Components.Gis.TestUtil.Test.csproj) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -18,7 +18,6 @@ - Fisheye: Tag eefc89546a801a4083259094a763fe7fd93b6c47 refers to a dead (removed) revision in file `Core/Components/test/Core.Components.Gis.TestUtil.Test/Theme/TestCriteriaTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Components/test/Core.Components.Gis.TestUtil/Core.Components.Gis.TestUtil.csproj =================================================================== diff -u -r3c41a03f6a1173872af5d8507465e291f9e3f8f2 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.Gis.TestUtil/Core.Components.Gis.TestUtil.csproj (.../Core.Components.Gis.TestUtil.csproj) (revision 3c41a03f6a1173872af5d8507465e291f9e3f8f2) +++ Core/Components/test/Core.Components.Gis.TestUtil/Core.Components.Gis.TestUtil.csproj (.../Core.Components.Gis.TestUtil.csproj) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -14,7 +14,6 @@ - @@ -28,6 +27,10 @@ {3bbfd65b-b277-4e50-ae6d-bd24c3434609} Core.Common.Base + + {D749EE4C-CE50-4C17-BF01-9A953028C126} + Core.Common.TestUtil + {318ba582-88c9-4816-a54a-a7e431461de3} Core.Components.Gis Index: Core/Components/test/Core.Components.Gis.TestUtil/Theme/CategoryThemeTestFactory.cs =================================================================== diff -u -r3c41a03f6a1173872af5d8507465e291f9e3f8f2 -reefc89546a801a4083259094a763fe7fd93b6c47 --- Core/Components/test/Core.Components.Gis.TestUtil/Theme/CategoryThemeTestFactory.cs (.../CategoryThemeTestFactory.cs) (revision 3c41a03f6a1173872af5d8507465e291f9e3f8f2) +++ Core/Components/test/Core.Components.Gis.TestUtil/Theme/CategoryThemeTestFactory.cs (.../CategoryThemeTestFactory.cs) (revision eefc89546a801a4083259094a763fe7fd93b6c47) @@ -19,7 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System; using System.Drawing; +using Core.Common.TestUtil; using Core.Components.Gis.Theme; namespace Core.Components.Gis.TestUtil.Theme @@ -35,7 +37,10 @@ /// A fully configured . public static CategoryTheme CreateCategoryTheme() { - return new CategoryTheme(Color.Aqua, new TestCriteria()); + var random = new Random(21); + return new CategoryTheme(Color.Aqua, + new ValueCriteria(random.NextEnumValue(), + random.NextDouble())); } } } \ No newline at end of file Fisheye: Tag eefc89546a801a4083259094a763fe7fd93b6c47 refers to a dead (removed) revision in file `Core/Components/test/Core.Components.Gis.TestUtil/Theme/TestCriteria.cs'. Fisheye: No comparison available. Pass `N' to diff?