@Override public void added(String doctype) { ModelExtractors.getInstance().registerExtractorsForCustomTypes(doctype); } }
@Test public void shouldThrowAnExceptionIfDocumentTypeIsUnknown() { thrown.expect(UnsupportedOperationException.class); String unknownDocumentType = "unknown"; ModelExtractors.getInstance().registerExtractorsForCustomTypes(unknownDocumentType); }
@Test public void shouldRegisterExtractorsOnlyForCustomTypes() { String knownDocumentType = "alltag"; DocumentTypes.addDocumentType(knownDocumentType); ModelExtractors.getInstance().registerExtractorsForCustomTypes(knownDocumentType); assertThat(ModelExtractors.getInstance().containsKey("published_alltags")).isFalse(); }
@Test public void shouldRegisterExtractorsForCustomType() { // A document type is known String newDocumentType = "project"; DocumentTypes.addDocumentType(newDocumentType); // when we register extractors for the new type ModelExtractors.getInstance().registerExtractorsForCustomTypes(newDocumentType); // then an extractor is registered by pluralized type as key assertThat(ModelExtractors.getInstance().containsKey("projects")).isTrue(); // and an extractor for published types is registered assertThat(ModelExtractors.getInstance().containsKey("published_projects")).isTrue(); }
@Test public void shouldResetToNonCustomizedExtractors() throws Exception { //given: // A document type is known String newDocumentType = "project"; DocumentTypes.addDocumentType(newDocumentType); // when we register extractors for the new type ModelExtractors.getInstance().registerExtractorsForCustomTypes(newDocumentType); //expect: assertThat(ModelExtractors.getInstance().keySet().size()).isEqualTo(17); //when: ModelExtractors.getInstance().reset(); //then: assertThat(ModelExtractors.getInstance().keySet().size()).isEqualTo(15); } }
@Override public void added(String doctype) { ModelExtractors.getInstance().registerExtractorsForCustomTypes(doctype); } }