}
protected void invokeApplication() throws Exception {
assert Conversation.instance().isLongRunning();
DocumentHome docHome = (DocumentHome)getInstance(DocumentHome.class);
assert docHome.getInstance().getId().equals(6l); // Init!
docHome.getTextEditor().setValue("[<=contentMacro[param=value]]");
docHome.syncEditorToInstance(docHome.getParentNode().getId(), docHome.getInstance());
docHome.syncMacros(docHome.getInstance());
assert docHome.getInstance().getHeaderMacros().size() == 2;
assert docHome.getInstance().getContentMacros().size() == 1;
assert docHome.getInstance().getFooterMacros().size() == 2;
// Check WikiMacro.equals() as well
WikiTextMacro macro = new WikiTextMacro("contentMacro");
macro.setPosition(0);
boolean macroFound = false;
for (WikiTextMacro wikiMacro : docHome.getInstance().getContentMacros()) {
if (wikiMacro.equals(macro)) {
assert wikiMacro.getParams().size()==1;
assert wikiMacro.getParams().get("param").equals("value");
macroFound = true;
}