IndexableStub stub = new IndexableStub();
stub.setReturnNull(true);
try {
this.strategy.processIndexable(stub);
fail("retun value is null must fail");
} catch (NotIndexableException e) {
}
assertNull(this.strategy.content);
String content = "fooBar";
stub.setReturnNull(false);
stub.setReturnValueTextContent(content);
this.strategy.processIndexable(stub);
assertNotNull(this.strategy.strategy.content);
assertEquals(content, this.strategy.strategy.content);
assertEquals(this.strategy.strategy.getClass(), PlainTextStrategy.class);
content = "html";
stub.setReturnNull(false);
stub.setReturnValueTextContent(content);
this.strategy.processIndexable(stub);
assertNotNull(this.strategy.strategy.content);
assertEquals(content, this.strategy.strategy.content);
assertEquals(this.strategy.strategy.getClass(), HTMLStrategy.class);
content = "xhtml";
stub.setReturnNull(false);
stub.setReturnValueTextContent(content);
this.strategy.processIndexable(stub);
assertNotNull(this.strategy.strategy.content);
assertEquals(content, this.strategy.strategy.content);
assertEquals(this.strategy.strategy.getClass(), XHtmlStrategy.class);
// test for xpath exc.
this.field.setPath(null);
try {
this.strategy.processIndexable(stub);
fail("path is null must fail");
} catch (NotIndexableException e) {
}