Index: Core/Components/src/Core.Components.Gis/Theme/ValueCriterion.cs =================================================================== diff -u -r4c7e3ff3bf5c0a50fd9d208b71400e5dfb6cebd4 -r185fd339ac34a4799f1c0368256feabfe839b91f --- Core/Components/src/Core.Components.Gis/Theme/ValueCriterion.cs (.../ValueCriterion.cs) (revision 4c7e3ff3bf5c0a50fd9d208b71400e5dfb6cebd4) +++ Core/Components/src/Core.Components.Gis/Theme/ValueCriterion.cs (.../ValueCriterion.cs) (revision 185fd339ac34a4799f1c0368256feabfe839b91f) @@ -34,10 +34,17 @@ /// /// The belonging to this criterion. /// The value to apply when using this criteria. + /// Thrown when + /// is null. /// Thrown when /// contains an invalid value for . public ValueCriterion(ValueCriterionOperator valueOperator, string value) { + if (value == null) + { + throw new ArgumentNullException(nameof(value)); + } + if (!Enum.IsDefined(typeof(ValueCriterionOperator), valueOperator)) { throw new InvalidEnumArgumentException(nameof(valueOperator), Index: Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriterionTest.cs =================================================================== diff -u -r4c7e3ff3bf5c0a50fd9d208b71400e5dfb6cebd4 -r185fd339ac34a4799f1c0368256feabfe839b91f --- Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriterionTest.cs (.../ValueCriterionTest.cs) (revision 4c7e3ff3bf5c0a50fd9d208b71400e5dfb6cebd4) +++ Core/Components/test/Core.Components.Gis.Test/Theme/ValueCriterionTest.cs (.../ValueCriterionTest.cs) (revision 185fd339ac34a4799f1c0368256feabfe839b91f) @@ -31,12 +31,13 @@ public class ValueCriterionTest { [Test] - public void Constructor_ReturnsExpectedProperties() + [TestCase("test value")] + [TestCase("")] + public void Constructor_ReturnsExpectedProperties(string value) { // Setup var random = new Random(21); var valueOperator = random.NextEnumValue(); - const string value = "test values"; // Call var criteria = new ValueCriterion(valueOperator, value); @@ -47,6 +48,21 @@ } [Test] + public void Constructor_ValueNull_ThrowsArgumentNullException() + { + // Setup + var random = new Random(21); + var valueOperator = random.NextEnumValue(); + + // Call + TestDelegate call = () => new ValueCriterion(valueOperator, null); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("value", exception.ParamName); + } + + [Test] public void Constructor_InvalidOperator_ThrowsInvalidEnumArgumentException() { // Setup