### Question:
FunctionalDependencyRanking extends Ranking { protected void calculateUniquenessRatios(FunctionalDependencyResult result) { float determinantUniqueRatio = calculateUniquenessRatio( this.tableInformationMap.get(result.getDeterminantTableName()), result.getDeterminant().getColumnIdentifiers()); result.setDeterminantUniquenessRatio(determinantUniqueRatio); float dependantUniqueRatio = calculateUniquenessRatio( this.tableInformationMap.get(result.getDependantTableName()), result.getExtendedDependant().getColumnIdentifiers()); result.setDependantUniquenessRatio(dependantUniqueRatio); } FunctionalDependencyRanking(List<FunctionalDependencyResult> results,
                                     Map<String, TableInformation> tableInformationMap); @Override void calculateDataIndependentRankings(); @Override void calculateDataDependentRankings(); Map<BitSet, PositionListIndex> createPLIs(TableInformation tableInformation);  }### Answer:
@Test public void testCalculateUniquenessRatio() throws Exception { setUpNormal(); FunctionalDependencyRanking ranking = new FunctionalDependencyRanking(functionalDependencyResults, tableInformationMap); FunctionalDependencyResult result = functionalDependencyResults.get(2); ranking.calculateUniquenessRatios(result); assertEquals(0.0, result.getDeterminantUniquenessRatio(), 0.01); assertEquals(0.33, result.getDependantUniquenessRatio(), 0.01); }