### Question:
OrderDependencyRanking extends Ranking { protected void calculateGeneralCoverage(OrderDependencyResult result) { Integer referencedColumnCount = result.getLhs().getColumnIdentifiers().size(); Integer dependantColumnCount = result.getRhs().getColumnIdentifiers().size(); int tableCount; if (result.getRhsTableName().equals(result.getLhsTableName())) { tableCount = this.tableInformationMap.get(result.getRhsTableName()).getColumnCount(); } else { tableCount = this.tableInformationMap.get(result.getRhsTableName()).getColumnCount() + this.tableInformationMap.get(result.getLhsTableName()).getColumnCount(); } result.setGeneralCoverage(((float) referencedColumnCount + dependantColumnCount) / tableCount); } OrderDependencyRanking(List<OrderDependencyResult> results,
                                Map<String, TableInformation> tableInformationMap); @Override void calculateDataIndependentRankings(); @Override void calculateDataDependentRankings();  }### Answer:
@Test public void testCalculateCoverage() throws Exception { OrderDependencyRanking ranking = new OrderDependencyRanking(orderDependencyResults, tableInformationMap); OrderDependencyResult result = orderDependencyResults.get(0); ranking.calculateGeneralCoverage(result); assertEquals(0.5, result.getGeneralCoverage(), 0.0); }