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


Reply via email to