Author: desruisseaux
Date: Fri Feb 28 22:52:59 2014
New Revision: 1573104
URL: http://svn.apache.org/r1573104
Log:
Added a test.
Modified:
sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
Modified:
sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java?rev=1573104&r1=1573103&r2=1573104&view=diff
==============================================================================
---
sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
[UTF-8] (original)
+++
sis/branches/JDK7/core/sis-referencing/src/test/java/org/apache/sis/parameter/ParametersTest.java
[UTF-8] Fri Feb 28 22:52:59 2014
@@ -36,7 +36,7 @@ import static org.junit.Assert.*;
/**
- * Tests the {@link Parameters} class.
+ * Tests the static methods in the {@link Parameters} class.
*
* @author Martin Desruisseaux (Geomatys)
* @since 0.4
@@ -46,6 +46,38 @@ import static org.junit.Assert.*;
@DependsOn({DefaultParameterDescriptorTest.class,
DefaultParameterValueTest.class})
public final class ParametersTest extends TestCase {
/**
+ * Tests the {@link Parameters#cast(ParameterDescriptor, Class)} and
+ * {@link Parameters#cast(ParameterValue, Class)} methods.
+ */
+ @Test
+ public void testCast() {
+ final ParameterDescriptor<Integer> descriptor =
DefaultParameterDescriptorTest.create("My param", 5, 15, 10);
+ assertSame(descriptor, Parameters.cast(descriptor, Integer.class));
+ try {
+ assertSame(descriptor, Parameters.cast(descriptor, Double.class));
+ fail("Expected a ClassCastException.");
+ } catch (ClassCastException e) {
+ final String message = e.getMessage();
+ assertTrue(message, message.contains("My param"));
+ assertTrue(message, message.contains("Integer"));
+ }
+ /*
+ * Tests the cast of values.
+ */
+ final ParameterValue<Integer> value = descriptor.createValue();
+ assertEquals("Expected a parameter initialized to the default value.",
10, value.intValue());
+ assertSame(value, Parameters.cast(value, Integer.class));
+ try {
+ assertSame(value, Parameters.cast(value, Double.class));
+ fail("Expected a ClassCastException.");
+ } catch (ClassCastException e) {
+ final String message = e.getMessage();
+ assertTrue(message, message.contains("My param"));
+ assertTrue(message, message.contains("Integer"));
+ }
+ }
+
+ /**
* Tests {@link Parameters#getValueDomain(ParameterDescriptor)
*/
@Test