You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by mg...@apache.org on 2009/10/08 16:30:59 UTC
svn commit: r823188 -
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java
Author: mgentry
Date: Thu Oct 8 14:30:59 2009
New Revision: 823188
URL: http://svn.apache.org/viewvc?rev=823188&view=rev
Log:
Beefier test case incorporating tests for CAY-1283 (enums for Ordering class).
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java?rev=823188&r1=823187&r2=823188&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/query/OrderingTest.java Thu Oct 8 14:30:59 2009
@@ -38,33 +38,107 @@
assertEquals(pathSpec, ord.getSortSpec().getOperand(0));
}
+ @Deprecated
public void testPathSpec2() throws Exception {
String pathSpec = "a.b.c";
Ordering ord = new Ordering(pathSpec, false);
assertEquals(pathSpec, ord.getSortSpec().getOperand(0));
}
+ public void testPathSpec3() throws Exception {
+ String pathSpec = "a.b.c";
+ Ordering ord = new Ordering(pathSpec, SortOrder.DESCENDING);
+ assertEquals(pathSpec, ord.getSortSpec().getOperand(0));
+ }
+
+ @Deprecated
public void testAsending1() throws Exception {
Ordering ord = new Ordering();
ord.setAscending(Ordering.DESC);
assertEquals(Ordering.DESC, ord.isAscending());
}
+ @Deprecated
+ public void testAsending2() throws Exception {
+ Ordering ord = new Ordering("K", Ordering.DESC);
+ assertEquals(Ordering.DESC, ord.isAscending());
+ }
+
+ public void testAscending1() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setAscending();
+ assertTrue(ord.isAscending());
+ assertFalse(ord.isDescending());
+ }
+
+ public void testAscending2() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setSortOrder(SortOrder.ASCENDING);
+ assertTrue(ord.isAscending());
+ assertFalse(ord.isDescending());
+ }
+
+ public void testAscending3() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setSortOrder(SortOrder.ASCENDING_INSENSITIVE);
+ assertTrue(ord.isAscending());
+ assertFalse(ord.isDescending());
+ }
+
+ public void testDescending1() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setDescending();
+ assertFalse(ord.isAscending());
+ assertTrue(ord.isDescending());
+ }
+
+ public void testDescending2() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setSortOrder(SortOrder.DESCENDING);
+ assertFalse(ord.isAscending());
+ assertTrue(ord.isDescending());
+ }
+
+ public void testDescending3() throws Exception {
+ Ordering ord = new Ordering();
+ ord.setSortOrder(SortOrder.DESCENDING_INSENSITIVE);
+ assertFalse(ord.isAscending());
+ assertTrue(ord.isDescending());
+ }
+
+ @Deprecated
public void testCaseInsensitive1() throws Exception {
Ordering ord = new Ordering("M", Ordering.ASC, true);
assertTrue(ord.isCaseInsensitive());
}
+ @Deprecated
public void testCaseInsensitive2() throws Exception {
Ordering ord = new Ordering("N", Ordering.ASC, false);
assertFalse(ord.isCaseInsensitive());
}
- public void testAsending2() throws Exception {
- Ordering ord = new Ordering("K", Ordering.DESC);
- assertEquals(Ordering.DESC, ord.isAscending());
+ public void testCaseInsensitive3() throws Exception {
+ Ordering ord = new Ordering("M", SortOrder.ASCENDING_INSENSITIVE);
+ assertTrue(ord.isCaseInsensitive());
}
+ public void testCaseInsensitive4() throws Exception {
+ Ordering ord = new Ordering("N", SortOrder.ASCENDING);
+ assertFalse(ord.isCaseInsensitive());
+ }
+
+ public void testCaseInsensitive5() throws Exception {
+ Ordering ord = new Ordering("M", SortOrder.DESCENDING_INSENSITIVE);
+ assertTrue(ord.isCaseInsensitive());
+ }
+
+ public void testCaseInsensitive6() throws Exception {
+ Ordering ord = new Ordering("N", SortOrder.DESCENDING);
+ assertFalse(ord.isCaseInsensitive());
+ }
+
+ @Deprecated
public void testCompare1() throws Exception {
Painting p1 = new Painting();
p1.setEstimatedPrice(new BigDecimal(1000.00));
@@ -81,6 +155,7 @@
assertTrue(ordering.compare(p2, p3) == 0);
}
+ @Deprecated
public void testCompare2() throws Exception {
// compare on non-persistent property
TestBean t1 = new TestBean(1000);
@@ -93,7 +168,36 @@
assertTrue(ordering.compare(t2, t3) == 0);
}
- public void testOrderList() throws Exception {
+ public void testCompare3() throws Exception {
+ Painting p1 = new Painting();
+ p1.setEstimatedPrice(new BigDecimal(1000.00));
+
+ Painting p2 = new Painting();
+ p2.setEstimatedPrice(new BigDecimal(2000.00));
+
+ Painting p3 = new Painting();
+ p3.setEstimatedPrice(new BigDecimal(2000.00));
+
+ Ordering ordering = new Ordering("estimatedPrice", SortOrder.ASCENDING);
+ assertTrue(ordering.compare(p1, p2) < 0);
+ assertTrue(ordering.compare(p2, p1) > 0);
+ assertTrue(ordering.compare(p2, p3) == 0);
+ }
+
+ public void testCompare4() throws Exception {
+ // compare on non-persistent property
+ TestBean t1 = new TestBean(1000);
+ TestBean t2 = new TestBean(2000);
+ TestBean t3 = new TestBean(2000);
+
+ Ordering ordering = new Ordering("integer", SortOrder.ASCENDING);
+ assertTrue(ordering.compare(t1, t2) < 0);
+ assertTrue(ordering.compare(t2, t1) > 0);
+ assertTrue(ordering.compare(t2, t3) == 0);
+ }
+
+ @Deprecated
+ public void testOrderList1() throws Exception {
// compare on non-persistent property
List list = new ArrayList(3);
@@ -107,7 +211,22 @@
assertEquals(5, ((TestBean) list.get(2)).getInteger().intValue());
}
- public void testOrderListWithMultipleOrderings() throws Exception {
+ public void testOrderList2() throws Exception {
+ // compare on non-persistent property
+ List list = new ArrayList(3);
+
+ list.add(new TestBean(5));
+ list.add(new TestBean(2));
+ list.add(new TestBean(3));
+
+ new Ordering("integer", SortOrder.ASCENDING).orderList(list);
+ assertEquals(2, ((TestBean) list.get(0)).getInteger().intValue());
+ assertEquals(3, ((TestBean) list.get(1)).getInteger().intValue());
+ assertEquals(5, ((TestBean) list.get(2)).getInteger().intValue());
+ }
+
+ @Deprecated
+ public void testOrderListWithMultipleOrderings1() throws Exception {
// compare on non-persistent property
List list = new ArrayList(6);
@@ -133,4 +252,31 @@
assertEquals(list.get(1), orderedList.get(4));
assertEquals(list.get(0), orderedList.get(5));
}
+
+ public void testOrderListWithMultipleOrderings2() throws Exception {
+ // compare on non-persistent property
+ List list = new ArrayList(6);
+
+ list.add(new TestBean("c", 1));
+ list.add(new TestBean("c", 30));
+ list.add(new TestBean("a", 5));
+ list.add(new TestBean("b", 1));
+ list.add(new TestBean("b", 2));
+ list.add(new TestBean("b", 5));
+
+ List orderings = new ArrayList(2);
+ orderings.add(new Ordering("string", SortOrder.ASCENDING));
+ orderings.add(new Ordering("integer", SortOrder.DESCENDING));
+
+ // clone list and then order
+ List orderedList = new ArrayList(list);
+ Ordering.orderList(orderedList, orderings);
+
+ assertEquals(list.get(2), orderedList.get(0));
+ assertEquals(list.get(5), orderedList.get(1));
+ assertEquals(list.get(4), orderedList.get(2));
+ assertEquals(list.get(3), orderedList.get(3));
+ assertEquals(list.get(1), orderedList.get(4));
+ assertEquals(list.get(0), orderedList.get(5));
+ }
}