From 97315b0f964be905d88ec73aff4ca74ff8b8ec78 Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Sun, 26 Aug 2007 16:33:40 +0000 Subject: Yanked out support for filtering against one-to-many join properties. It needs to be redesigned. --- .../cursor/TestShortCircuitOptimizer.java | 2 + .../carbonado/filter/TestFilterNotJoinedFrom.java | 50 ++++++++-------------- 2 files changed, 19 insertions(+), 33 deletions(-) (limited to 'src/test') diff --git a/src/test/java/com/amazon/carbonado/cursor/TestShortCircuitOptimizer.java b/src/test/java/com/amazon/carbonado/cursor/TestShortCircuitOptimizer.java index 4bfa78d..3e926a3 100644 --- a/src/test/java/com/amazon/carbonado/cursor/TestShortCircuitOptimizer.java +++ b/src/test/java/com/amazon/carbonado/cursor/TestShortCircuitOptimizer.java @@ -159,6 +159,7 @@ public class TestShortCircuitOptimizer extends TestCase { } } + /* public void testOneToManyJoins() throws Exception { { Filter filter = Filter @@ -214,4 +215,5 @@ public class TestShortCircuitOptimizer extends TestCase { assertEquals(filter, optimized); } } + */ } diff --git a/src/test/java/com/amazon/carbonado/filter/TestFilterNotJoinedFrom.java b/src/test/java/com/amazon/carbonado/filter/TestFilterNotJoinedFrom.java index 6957913..1e97d89 100644 --- a/src/test/java/com/amazon/carbonado/filter/TestFilterNotJoinedFrom.java +++ b/src/test/java/com/amazon/carbonado/filter/TestFilterNotJoinedFrom.java @@ -23,7 +23,6 @@ import junit.framework.TestSuite; import com.amazon.carbonado.stored.Address; import com.amazon.carbonado.stored.Order; -import com.amazon.carbonado.stored.OrderItem; import com.amazon.carbonado.stored.Shipment; /** @@ -48,11 +47,11 @@ public class TestFilterNotJoinedFrom extends TestCase { Filter filter = Filter.getOpenFilter(Shipment.class); Filter.NotJoined nj = filter.notJoinedFrom("order"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); } @@ -60,11 +59,11 @@ public class TestFilterNotJoinedFrom extends TestCase { Filter filter = Filter.getClosedFilter(Shipment.class); Filter.NotJoined nj = filter.notJoinedFrom("order"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); } @@ -73,11 +72,11 @@ public class TestFilterNotJoinedFrom extends TestCase { filter = filter.bind(); Filter.NotJoined nj = filter.notJoinedFrom("order"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor(Shipment.class, "order.orderTotal < ?"); @@ -89,7 +88,7 @@ public class TestFilterNotJoinedFrom extends TestCase { assertEquals(Filter.getOpenFilter(Shipment.class), nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor(Shipment.class, "order.address.addressCity = ?"); @@ -118,11 +117,11 @@ public class TestFilterNotJoinedFrom extends TestCase { filter = filter.bind(); Filter.NotJoined nj = filter.notJoinedFrom("order"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor @@ -137,7 +136,7 @@ public class TestFilterNotJoinedFrom extends TestCase { nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor @@ -167,11 +166,11 @@ public class TestFilterNotJoinedFrom extends TestCase { filter = filter.bind(); Filter.NotJoined nj = filter.notJoinedFrom("order"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor @@ -190,11 +189,11 @@ public class TestFilterNotJoinedFrom extends TestCase { filter = filter.bind(); nj = filter.notJoinedFrom("order"); - assertEquals(null, nj.getNotJoinedFilter()); + assertEquals(Filter.getOpenFilter(Order.class), nj.getNotJoinedFilter()); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertTrue(nj.getNotJoinedFilter() == null); + assertTrue(nj.getNotJoinedFilter() instanceof OpenFilter); assertEquals(filter, nj.getRemainderFilter()); filter = Filter.filterFor @@ -220,11 +219,11 @@ public class TestFilterNotJoinedFrom extends TestCase { filter = filter.bind(); nj = filter.notJoinedFrom("order"); - assertEquals(null, nj.getNotJoinedFilter()); + assertEquals(Filter.getOpenFilter(Order.class), nj.getNotJoinedFilter()); assertEquals(filter, nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertEquals(null, nj.getNotJoinedFilter()); + assertEquals(Filter.getOpenFilter(Address.class), nj.getNotJoinedFilter()); assertEquals(filter, nj.getRemainderFilter()); } @@ -243,7 +242,7 @@ public class TestFilterNotJoinedFrom extends TestCase { assertEquals(Filter.getOpenFilter(Shipment.class), nj.getRemainderFilter()); nj = filter.notJoinedFrom("order.address"); - assertEquals(null, nj.getNotJoinedFilter()); + assertEquals(Filter.getOpenFilter(Address.class), nj.getNotJoinedFilter()); assertEquals(filter, nj.getRemainderFilter()); filter = filter.and("order.address.customData > ?"); @@ -269,19 +268,4 @@ public class TestFilterNotJoinedFrom extends TestCase { "| order.orderTotal != ?").bind(), nj.getRemainderFilter()); } - - public void testOneToMany() { - Filter filter = Filter.filterFor - (Order.class, "orderItems.itemPrice = ? & addressID = ?"); - - Filter.NotJoined nj = filter.notJoinedFrom("orderItems"); - - assertEquals(Filter.filterFor(OrderItem.class, "itemPrice = ?").bind(), - nj.getNotJoinedFilter()); - assertEquals(Filter.filterFor(Order.class, "addressID = ?").bind(), - nj.getRemainderFilter()); - - assertEquals(Filter.filterFor(Order.class, "orderItems.itemPrice = ?").bind(), - nj.getNotJoinedFilter().asJoinedFrom(Order.class, "orderItems")); - } } -- cgit v1.2.3