public void testGetCarthesianProductNoRows() throws Exception { DataSet dataSet = MetaModelHelper.getCarthesianProduct(createDataSet4(), createDataSet2(), createDataSet3()); assertEquals(4, dataSet.getSelectItems().length); assertFalse(dataSet.next()); dataSet = MetaModelHelper.getCarthesianProduct(createDataSet1(), createDataSet4(), createDataSet3()); assertEquals(4, dataSet.getSelectItems().length); assertFalse(dataSet.next()); dataSet = MetaModelHelper.getCarthesianProduct(createDataSet1(), createDataSet2(), createDataSet4()); assertEquals(3, dataSet.getSelectItems().length); assertFalse(dataSet.next()); }
public void testTripleCarthesianProduct() throws Exception { DataSet dataSet = MetaModelHelper.getCarthesianProduct(createDataSet1(), createDataSet2(), createDataSet3()); assertEquals(4, dataSet.getSelectItems().length); for (int i = 0; i < 3 * 3 * 2; i++) { assertTrue("Assertion failed at i=" + i, dataSet.next()); } assertFalse(dataSet.next()); }
public void testTripleCarthesianProductWithWhereItems() throws Exception { DataSet ds1 = createDataSet1(); DataSet ds2 = createDataSet2(); DataSet[] dataSets = new DataSet[] { ds1, ds2, }; FilterItem w1 = new FilterItem(ds1.getSelectItems()[0], OperatorType.EQUALS_TO, "f"); DataSet dataSet = MetaModelHelper.getCarthesianProduct(dataSets, w1); assertEquals(2, dataSet.getSelectItems().length); for (int i = 0; i < 1 * 3; i++) { assertTrue("Assertion failed at i=" + i, dataSet.next()); assertEquals("f", dataSet.getRow().getValue(0)); } assertFalse(dataSet.next()); }
public void testSimpleCarthesianProduct() throws Exception { DataSet dataSet = MetaModelHelper.getCarthesianProduct(createDataSet1(), createDataSet2()); assertEquals(2, dataSet.getSelectItems().length); assertTrue(dataSet.next()); assertEquals("Row[values=[f, b]]", dataSet.getRow().toString()); assertTrue(dataSet.next()); assertEquals("Row[values=[f, a]]", dataSet.getRow().toString()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertTrue(dataSet.next()); assertEquals("Row[values=[o, r]]", dataSet.getRow().toString()); assertFalse(dataSet.next()); }