You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by bo...@apache.org on 2006/01/15 16:34:05 UTC

svn commit: r369218 - in /incubator/tobago/trunk/tobago-core/src: main/java/org/apache/myfaces/tobago/component/UIData.java test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java

Author: bommel
Date: Sun Jan 15 07:33:45 2006
New Revision: 369218

URL: http://svn.apache.org/viewcvs?rev=369218&view=rev
Log:
fix UIData page bug added test case

Added:
    incubator/tobago/trunk/tobago-core/src/test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java
Modified:
    incubator/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/component/UIData.java

Modified: incubator/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/component/UIData.java
URL: http://svn.apache.org/viewcvs/incubator/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/component/UIData.java?rev=369218&r1=369217&r2=369218&view=diff
==============================================================================
--- incubator/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/component/UIData.java (original)
+++ incubator/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/component/UIData.java Sun Jan 15 07:33:45 2006
@@ -278,15 +278,11 @@
 
   public int getPage() {
     int first = getFirst() + 1;
-    int rows = getRows();
-    if (rows == 1) {
-      return first;
+    int rows = getRows();  
+    if ((first % rows) > 0) {
+      return (first / rows) + 1;
     } else {
-      if ((first % rows) == 1) {
-        return (first / rows) + 1;
-      } else {
-        return (first / rows) + 2;
-      }
+      return (first / rows) ;
     }
   }
 

Added: incubator/tobago/trunk/tobago-core/src/test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java
URL: http://svn.apache.org/viewcvs/incubator/tobago/trunk/tobago-core/src/test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java?rev=369218&view=auto
==============================================================================
--- incubator/tobago/trunk/tobago-core/src/test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java (added)
+++ incubator/tobago/trunk/tobago-core/src/test/java/org/apache/myfaces/tobago/component/UIDataUnitTest.java Sun Jan 15 07:33:45 2006
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2002-2005 The Apache Software Foundation.
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ * 
+ * $Id:UITreeUnitTest.java 1300 2005-08-10 16:40:23 +0200 (Mi, 10 Aug 2005) lofwyr $
+ */
+package org.apache.myfaces.tobago.component;
+
+import junit.framework.TestCase;
+import javax.faces.model.ArrayDataModel;
+
+/**
+ *
+ *
+ * @author bommel (latest modification by $Author$)
+ * @version $Revision$ $Date$
+ */
+public class UIDataUnitTest extends TestCase {
+  String [] nineRows =
+      { "one", "two", "three", "four", "five",
+          "six", "seven" , "eight", "nine" };
+
+  public void testPage() {
+    UIData data = new UIData();
+    data.setValue(new ArrayDataModel(nineRows));
+    data.setRows(5);
+    assertEquals(1, data.getPage());
+    assertEquals(2, data.getPages());
+
+    data.setRows(9);
+    assertEquals(1, data.getPage());
+    assertEquals(1, data.getPages());
+
+    data.setRows(2);
+    assertEquals(1, data.getPage());
+    assertEquals(5, data.getPages());
+
+    data.setRows(3);
+    assertEquals(1, data.getPage());
+    assertEquals(3, data.getPages());
+
+
+    data.setRows(1);
+    assertEquals(1, data.getPage());
+    assertEquals(9, data.getPages());
+
+    data.setRows(5);
+    data.setFirst(5);
+    assertEquals(2, data.getPage());
+
+    data.setRows(9);
+    data.setFirst(6);
+    assertEquals(1, data.getPage());
+
+    data.setRows(2);
+    data.setFirst(0);
+    assertEquals(1, data.getPage());
+
+    data.setRows(2);
+    data.setFirst(1);
+    assertEquals(1, data.getPage());
+
+    data.setRows(2);
+    data.setFirst(2);
+    assertEquals(2, data.getPage());
+
+    data.setRows(2);
+    data.setFirst(3);
+    assertEquals(2, data.getPage());
+
+    data.setRows(2);
+    data.setFirst(6);
+    assertEquals(4, data.getPage());
+
+    data.setRows(1);
+    data.setFirst(8);
+    assertEquals(9, data.getPage());
+  }
+}