testFragment function
Renders a specific fragment from an in-memory template.
Convenience wrapper around Trellis.renderFragment for test code.
The template parameter is a template name (key in MapLoader),
not a raw source string. The source is loaded via engine.loader.loadSync().
final html = testFragment(engine, 'nav', 'mainNav', {
'items': [{'url': '/home', 'label': 'Home'}],
});
expect(html, hasElement('a'));
Throws TemplateNotFoundException if template is not in the engine's loader.
Throws FragmentNotFoundException if fragment is not found in the template.
Implementation
String testFragment(Trellis engine, String template, String fragment, Map<String, dynamic> context) {
final source = engine.loader.loadSync(template);
if (source == null) {
throw TemplateNotFoundException(template);
}
return engine.renderFragment(source, fragment: fragment, context: context);
}