ComponentTemplateSource templateSource = mockComponentTemplateSource();
PageElementFactory elementFactory = mockPageElementFactory();
ComponentPageElement rootElement = mockComponentPageElement();
InternalComponentResources resources = mockInternalComponentResources();
ComponentModel model = mockComponentModel();
ComponentTemplate template = mockComponentTemplate();
ComponentClassResolver resolver = mockComponentClassResolver();
Location bazLocation = mockLocation();
Location biffLocation = mockLocation();
Resource r = mockResource();
Map<String, Location> componentIds = CollectionFactory.newMap();
componentIds.put("baz", bazLocation);
componentIds.put("biff", biffLocation);
train_resolvePageNameToClassName(resolver, LOGICAL_PAGE_NAME, PAGE_CLASS_NAME);
train_newRootComponentElement(elementFactory, PAGE_CLASS_NAME, rootElement, LOCALE);
train_getComponentResources(rootElement, resources);
train_getComponentModel(resources, model);
train_getComponentClassName(model, PAGE_CLASS_NAME);
train_getTemplate(templateSource, model, LOCALE, template);
train_isMissing(template, false);
train_getEmbeddedIds(model, "foo", "bar", "baz");
expect(template.getComponentIds()).andReturn(componentIds);
expect(template.getResource()).andReturn(r);
replay();
PageLoader loader = new PageLoaderImpl(templateSource, elementFactory, null, null, resolver);