### Question:
FacetDescriptionFactory { public FacetDescription createKeywordDescription(String facetName, String relationName, final String projectPrefix) { String propertyName = String.format("%skeyword_value", projectPrefix); return this.createListFacetDescription(facetName, String.class, propertyName, relationName); } FacetDescriptionFactory(PropertyParserFactory parserFactory); FacetDescription createListFacetDescription(String facetName, PropertyParser parser, String propertyName); FacetDescription createListFacetDescription(String facetName, Class<?> typeToParse, String propertyName); FacetDescription createListFacetDescription(String facetName, PropertyParser parser, String propertyName,
                                                     String... relations); FacetDescription createListFacetDescription(String facetName, Class<?> typeToParse, String propertyName,
                                                     String... relations); FacetDescription createDerivedListFacetDescription(String facetName, String relationName,
                                                            Class<?> typeToParse, String propertyName,
                                                            String... relations); FacetDescription createDerivedListFacetDescription(String facetName, List<String> relationNames,
                                                            Class<?> typeToParse, String propertyName,
                                                            String... relations); FacetDescription createKeywordDescription(String facetName, String relationName, final String projectPrefix); FacetDescription createDerivedKeywordDescription(String facetName, String relationName,
                                                          final String projectPrefix, String... relations); FacetDescription createDatableRangeFacetDescription(String facetName, String propertyName,
                                                             String... relations); FacetDescription createDatableRangeFacetDescription(String facetName, String propertyName); FacetDescription createChangeRangeFacetDescription(String facetName, String propertyName); FacetDescription createMultiValueListFacetDescription(String facetName, String propertyName); FacetDescription createMultiValueListFacetDescription(String facetName, String propertyName,
                                                               String... relations); FacetDescription createEdgeFacetDescription(String facetName, String... relationNames); FacetDescription createDcarArchiveAndArchiverPeriodFacetDescription(String facetName, String startYear,
                                                                             String endYear); FacetDescription createJoinedListFacetDescription(String facetName, String propertyName, String separator); FacetDescription createAltNameFacetDescription(String facetName, String propertyName); FacetDescription createCharterFondsFacetDescription(String facetName);  }### Answer:
@Test public void createKeywordFacetDescriptionCreatesADerivedListFacetDescription() { FacetDescription description = instance.createKeywordDescription("facetName", "relationName", "ww"); assertThat(description, is(instanceOf(RelatedListFacetDescription.class))); verify(parserFactory).getParser(String.class); }