@Test public void getTablesSubTest() throws Exception { Database db = new Database("test"); Table t1 = new Table("tname1"); t1.addColumn("A", CharField.class); t1.addColumn("B", IntegerField.class); Row r1 = t1.getRowSkeleton(); r1.insert(0, Cell.makeCell("text1")); r1.insert(1, Cell.makeCell(11)); t1.addRow(r1); r1.insert(0, Cell.makeCell("text2")); r1.insert(1, Cell.makeCell(12)); t1.addRow(r1); r1.insert(0, Cell.makeCell("text3")); r1.insert(1, Cell.makeCell(13)); t1.addRow(r1); Table t2 = new Table("tname2"); t2.addColumn("A", CharField.class); t2.addColumn("B", IntegerField.class); Row r3 = t2.getRowSkeleton(); r3.insert(0, Cell.makeCell("text2")); r3.insert(1, Cell.makeCell(12)); t2.addRow(r3); Table resTable = db.getTablesSub(t1, t2); assertEquals(2, resTable.size()); assertEquals(2, resTable.getHeader().size()); assertEquals(CharField.class, resTable.getHeader().getTypeAt(0)); assertEquals(IntegerField.class, resTable.getHeader().getTypeAt(1)); assertEquals(2, resTable.size()); assertEquals("text1", resTable.getStringRow(0).getCel().get(0)); assertEquals("11", resTable.getStringRow(0).getCel().get(1)); assertEquals("text3", resTable.getStringRow(1).getCel().get(0)); assertEquals("13", resTable.getStringRow(1).getCel().get(1)); }