public ProcessingResult process(Resource resource) { EventRecorder eventRecorder = new EventRecorder(); stubTarget = new StubTarget(); if (fixture == null) { fixture = new Fixture(new DummyFixture()); withResource(new Resource("/spec/concordion/Dummy.html"), "<html/>"); } else { withResource( new ClassNameBasedSpecificationLocator("html").locateSpecification(fixture), "<html/>"); } ConcordionBuilder concordionBuilder = new ConcordionBuilder() .withAssertEqualsListener(eventRecorder) .withThrowableListener(eventRecorder) .withSource(stubSource) .withEvaluatorFactory(evaluatorFactory) .withTarget(stubTarget) .withFixture(fixture); fixtureExtensionLoader.addExtensions(fixture, concordionBuilder); if (extension != null) { extension.addTo(concordionBuilder); } Concordion concordion = null; try { concordion = concordionBuilder.build(); } catch (UnableToBuildConcordionException e) { throw new RuntimeException("Test rig failed to build concordion", e); } try { ResultSummary resultSummary = null; concordion.override(resource, fixture); List<String> examples = concordion.getExampleNames(); if (!examples.isEmpty()) { for (String example : examples) { resultSummary = concordion.processExample(example); } } concordion.finish(); String xml = stubTarget.getWrittenString(resource); return new ProcessingResult(resultSummary, eventRecorder, xml); } catch (IOException e) { throw new RuntimeException("Test rig failed to process specification", e); } }
private ProcessingResult process(String html, Resource resource) { withResource(resource, html); return process(resource); }
@Override protected void configureTestRig(TestRig testRig) { testRig.withResource(new Resource(SOURCE_PATH), TEST_CSS); }