### Question:
FunctionalDependencyRanking extends Ranking { public Map<BitSet, PositionListIndex> createPLIs(TableInformation tableInformation) throws InputGenerationException, InputIterationException, AlgorithmConfigurationException { Map<BitSet, PositionListIndex> pliList = new HashMap<>(); PLIBuilder pliBuilder = new PLIBuilder(tableInformation.getRelationalInputGenerator().generateNewCopy()); List<PositionListIndex> PLIs = pliBuilder.getPLIList(); int index = 0; for (PositionListIndex PLI : PLIs) { BitSet bitSet = new BitSet(); bitSet.set(index); pliList.put(bitSet, PLI); index++; } return pliList; } FunctionalDependencyRanking(List<FunctionalDependencyResult> results,
                                     Map<String, TableInformation> tableInformationMap); @Override void calculateDataIndependentRankings(); @Override void calculateDataDependentRankings(); Map<BitSet, PositionListIndex> createPLIs(TableInformation tableInformation);  }### Answer:
@Test public void testCreatePLIs() throws Exception { setUpPollution(); FunctionalDependencyRanking ranking = new FunctionalDependencyRanking(functionalDependencyResults, tableInformationMap); TableInformation tableInformation = tableInformationMap.values().iterator().next(); Map<BitSet, PositionListIndex> plis = ranking.createPLIs(tableInformation); BitSet bitSet = new BitSet(); bitSet.set(0); assertTrue(plis.containsKey(bitSet)); bitSet.clear(); bitSet.set(tableInformation.getColumnCount() - 1); assertTrue(plis.containsKey(bitSet)); }