### Question:
FacetDescriptionFactory { public FacetDescription createDatableRangeFacetDescription(String facetName, String propertyName, String... relations) { return new RelatedDatableRangeFacetDescription(facetName, propertyName, relations); } 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 createDatableRangeFacetDescriptionCreatesADatableRangeFacetDescription() { FacetDescription description = instance.createDatableRangeFacetDescription("facetName", "propertyName"); assertThat(description, is(instanceOf(DatableRangeFacetDescription.class))); }
@Test public void createDatableRangeFacetDescriptionWithARelationCreatesARelatedDatableRangeFacetDescription() { FacetDescription description = instance.createDatableRangeFacetDescription( "facetName", "propertyName", "relationName"); assertThat(description, is(instanceOf(RelatedDatableRangeFacetDescription.class))); }