RazorEngineHost { public ParserBase decorateCodeParser(@Nonnull final ParserBase incomingCodeParser) { return checkNotNull(incomingCodeParser, "incomingCodeParser"); } protected  RazorEngineHost();  RazorEngineHost(@Nonnull final RazorCodeLanguage<?> codeLanguage);  RazorEngineHost(@Nonnull final RazorCodeLanguage<?> codeLanguage,
                           @Nonnull final Delegates.IFunc<ParserBase> markupParserFactory
                          ); ParserBase createMarkupParser(); ParserBase decorateCodeParser(@Nonnull final ParserBase incomingCodeParser); ParserBase decorateMarkupParser(@Nonnull final ParserBase incomingMarkupParser); RazorCodeGenerator decorateCodeGenerator(@Nonnull final RazorCodeGenerator incomingCodeGenerator); void postProcessGeneratedCode(@Nonnull final CodeGeneratorContext context); void postProcessGeneratedCode(@Nonnull final CodeCompileUnit codeCompileUnit,
                                         @Nonnull final CodePackage generatedPackage,
                                         @Nonnull final CodeTypeDeclaration generatedClass,
                                         @Nonnull final CodeMemberMethod executeMethod
                                        ); RazorCodeLanguage<?> getCodeLanguage(); boolean isDesignTimeMode(); void setDesignTimeMode(boolean designTimeMode); boolean isInstrumentationActive(); void enableInstrumentation(final boolean setActive); GeneratedClassContext getGeneratedClassContext(); void setGeneratedClassContext(@Nonnull final GeneratedClassContext generatedClassContext); String getInstrumentedSourceFilePath(); void setInstrumentedSourceFilePath(final String instrumentedSourceFilePath); Collection<String> getPackageImports(); String getDefaultBaseClass(); void setDefaultBaseClass(final String defaultBaseClass); String getDefaultClassName(); void setDefaultClassName(final String defaultClassName); String getDefaultPackage(); void setDefaultPackage(final String defaultPackage); boolean isStaticHelpers(); void setStaticHelpers(final boolean staticHelpers); boolean isIndentingWithTabs(); void setIndentingWithTabs(final boolean indentingWithTabs); int getTabSize(); void setTabSize(final int tabSize);  }
@Test public void decorateCodeParserDoesNotModifyIncomingParser() { ParserBase expected = new JavaCodeParser(); ParserBase actual = createHost().decorateCodeParser(expected); assertSame(expected, actual); }
@SuppressWarnings("ConstantConditions") @Test(expected = NullPointerException.class) public void decorateCodeParserRequiresNonNullCodeParser() { createHost().decorateCodeParser(null); }