// create a PathQuery, create expected column objects and compare. Include: // - some paths with descriptions // - select fields that are/aren't class keys public void testSetColumns() throws Exception { PathQuery pq = new PathQuery(model); pq.addViews("Company.name", "Company.vatNumber", "Company.CEO.name"); pq.setDescription("Company", "description 1"); Map<String, QuerySelectable> pathToQueryNode = new HashMap(); Query query = MainHelper.makeQuery(pq, new HashMap(), pathToQueryNode, null, null); Results results = osd.execute(query); WebResults webResults = new WebResults(im, pq, results, pathToQueryNode, classKeys); List<Column> expectedColumns = new ArrayList<Column>(); Column col1 = new Column("description 1 > name", 0, Company.class); Column col2 = new Column("description 1 > vatNumber", 1, Company.class); Column col3 = new Column("description 1 > CEO > name", 2, CEO.class); expectedColumns.add(col1); expectedColumns.add(col2); expectedColumns.add(col3); assertEquals(expectedColumns.get(0), webResults.getColumns().get(0)); assertEquals(expectedColumns.get(1), webResults.getColumns().get(1)); assertEquals(expectedColumns.get(2), webResults.getColumns().get(2)); }