diff options
| author | Brian S. O'Neill <bronee@gmail.com> | 2008-05-24 21:02:19 +0000 |
|---|---|---|
| committer | Brian S. O'Neill <bronee@gmail.com> | 2008-05-24 21:02:19 +0000 |
| commit | 2712d569c34e8af1424220186861ea7d38da296e (patch) | |
| tree | 215b2a0ada2634d367fd822ff4ac2c44dab0670d /src | |
| parent | 74a03f12fc43a9bb19dd97c040bd0cbec3c2576f (diff) | |
Added simple outer join test.
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/java/com/amazon/carbonado/qe/TestIndexedQueryAnalyzer.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/java/com/amazon/carbonado/qe/TestIndexedQueryAnalyzer.java b/src/test/java/com/amazon/carbonado/qe/TestIndexedQueryAnalyzer.java index ebc8d48..4e6a9ae 100644 --- a/src/test/java/com/amazon/carbonado/qe/TestIndexedQueryAnalyzer.java +++ b/src/test/java/com/amazon/carbonado/qe/TestIndexedQueryAnalyzer.java @@ -208,6 +208,33 @@ public class TestIndexedQueryAnalyzer extends TestCase { assertEquals("order.address", result.getForeignProperty().toString());
}
+ public void testChainedOuterJoin() throws Exception {
+ IndexedQueryAnalyzer iqa = new IndexedQueryAnalyzer(Shipment.class, RepoAccess.INSTANCE);
+ Filter<Shipment> filter = Filter.filterFor
+ (Shipment.class, "(order).address.addressState = ?");
+ filter = filter.bind();
+ IndexedQueryAnalyzer.Result result = iqa.analyze(filter, null, null);
+
+ assertFalse(result.handlesAnything());
+ assertEquals(filter, result.getCompositeScore().getFilteringScore().getRemainderFilter());
+
+ filter = Filter.filterFor
+ (Shipment.class, "order.(address).addressState = ?");
+ filter = filter.bind();
+ result = iqa.analyze(filter, null, null);
+
+ assertFalse(result.handlesAnything());
+ assertEquals(filter, result.getCompositeScore().getFilteringScore().getRemainderFilter());
+
+ filter = Filter.filterFor
+ (Shipment.class, "(order).(address).addressState = ?");
+ filter = filter.bind();
+ result = iqa.analyze(filter, null, null);
+
+ assertFalse(result.handlesAnything());
+ assertEquals(filter, result.getCompositeScore().getFilteringScore().getRemainderFilter());
+ }
+
public void testChainedJoinExecutor() throws Exception {
IndexedQueryAnalyzer<Shipment> iqa =
new IndexedQueryAnalyzer<Shipment>(Shipment.class, RepoAccess.INSTANCE);
|
