This is the mail archive of the mauve-patches@sourceware.org mailing list for the Mauve project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

FYI: ComponentSampleModel - test updates


This patch (committed) updates a couple of tests for the ComponentSampleModel class:

2006-07-19 David Gilbert <david.gilbert@object-refinery.com>

	* gnu/testlet/java/awt/image/ComponentSampleModel/constructors.java
	(testConstructor2): Added checks,
	* gnu/testlet/java/awt/image/ComponentSampleModel/getPixel.java
	(testMethod1): Restore IllegalArgumentException checks.

Regards,

Dave
Index: gnu/testlet/java/awt/image/ComponentSampleModel/constructors.java
===================================================================
RCS file: /cvs/mauve/mauve/gnu/testlet/java/awt/image/ComponentSampleModel/constructors.java,v
retrieving revision 1.2
diff -u -r1.2 constructors.java
--- gnu/testlet/java/awt/image/ComponentSampleModel/constructors.java	18 Jul 2006 16:56:39 -0000	1.2
+++ gnu/testlet/java/awt/image/ComponentSampleModel/constructors.java	19 Jul 2006 05:10:49 -0000
@@ -146,8 +146,156 @@
   
   public void testConstructor2(TestHarness harness)
   {
-    harness.checkPoint("testConstructor2()");
+    harness.checkPoint("(int, int, int, int, int, int[], int[])");
+
+    int[] bankIndices = new int[] {0, 1};
+    int[] bandOffsets = new int[] {0, 0};
+    
+    ComponentSampleModel m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 
+            11, 1, 25, bankIndices, new int[] {0, 0});
+    harness.check(m.getDataType(), DataBuffer.TYPE_INT);
+    harness.check(m.getWidth(), 22);
+    harness.check(m.getHeight(), 11);
+    harness.check(m.getPixelStride(), 1);
+    harness.check(m.getNumBands(), 2);
+    harness.check(m.getNumDataElements(), 2);
+    harness.check(Arrays.equals(m.getBankIndices(), new int[] {0, 1}));
+    harness.check(m.getBankIndices() != bankIndices);  // not the same instance
+    harness.check(Arrays.equals(m.getBandOffsets(), bandOffsets));
+    harness.check(m.getBandOffsets() != bandOffsets);  // not the same instance
+    // check unknown data type
+    boolean pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_UNDEFINED, 22, 
+                11, 1, 25, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+      {
+        pass = true;  
+      }
+    harness.check(pass);
+    
+    // check w = 0
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 0, 
+            11, 1, 25, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+    {
+      pass = true;
+    }
+    harness.check(pass);
+    
+    // check h = 0
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 
+            0, 1, 25, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+    {
+      pass = true;
+    }
+    harness.check(pass);
+    
+    // check w * h exceeds Integer.MAX_VALUE
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, Integer.MAX_VALUE - 1, 
+            2, 1, 25, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+    {
+      pass = true;
+    }
+    harness.check(pass);
+    
+    // try pixelStride < 0
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 
+              11, -1, 25, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+      {
+        pass = true;  
+      }
+    harness.check(pass);
+    
+    // try scanlineStride = 0
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 
+                11, 1, -1, new int[] {0, 1}, new int[] {0, 0});
+      }
+    catch (IllegalArgumentException e)
+      {
+        pass = true;  
+      }
+    harness.check(pass);
+
+    // try null bankIndices
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 11, 1, 25, null, 
+                new int[] {0, 0});
+      }
+    catch (NullPointerException e)
+      {
+        pass = true;
+      }
+    harness.check(pass);
+      
+    // try empty bankIndices
+    pass = false;
+    try
+      { 
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 11, 1, 25, 
+                new int[0], new int[] {0, 0});
+      }
+    catch (ArrayIndexOutOfBoundsException e)
+      {
+        pass = true;
+      }
+    catch (IllegalArgumentException e)
+      {
+        pass = true;
+      }
+    harness.check(pass);
+    
+    // try null bandOffsets
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 11, 1, 25, 
+                new int[] {0, 0}, null);
+      }
+    catch (NullPointerException e)
+      {
+        pass = true;
+      }
+    harness.check(pass);
     
+    // try arrays of different lengths 
+    pass = false;
+    try
+      {
+        m = new ComponentSampleModel(DataBuffer.TYPE_INT, 22, 11, 1, 25, 
+                new int[1], new int[2]);
+      }
+    catch (IllegalArgumentException e)
+      {
+        pass = true;
+      }
+    harness.check(pass);
   }
   
   public void testDefensiveCopies(TestHarness harness)
Index: gnu/testlet/java/awt/image/ComponentSampleModel/getPixel.java
===================================================================
RCS file: /cvs/mauve/mauve/gnu/testlet/java/awt/image/ComponentSampleModel/getPixel.java,v
retrieving revision 1.1
diff -u -r1.1 getPixel.java
--- gnu/testlet/java/awt/image/ComponentSampleModel/getPixel.java	18 Jul 2006 16:56:39 -0000	1.1
+++ gnu/testlet/java/awt/image/ComponentSampleModel/getPixel.java	19 Jul 2006 05:10:49 -0000
@@ -59,26 +59,26 @@
     harness.check(Arrays.equals(pixel, new int[] {1, 2, 3}));
     
     // try x < 0
-    boolean pass = true;
+    boolean pass = false;
     try
     {
       m.getPixel(-1, 1, (int[]) null, db);
     }
     catch (ArrayIndexOutOfBoundsException e)
     {
-      pass = false;
+      pass = true;
     }
     harness.check(pass);
     
     // try x == width
-    pass = true;
+    pass = false;
     try
     {
       m.getPixel(5, 1, (int[]) null, db);
     }
     catch (ArrayIndexOutOfBoundsException e)
     {
-      pass = false;
+      pass = true;
     }
     harness.check(pass);
     

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]