fix(scenario): include error messages in XML output

Fix the XML output of scenario tests so that it properly includes error
messages from failing specs.
This commit is contained in:
Julie 2012-10-09 11:13:26 -07:00 committed by Igor Minar
parent 934204ec18
commit 9a3a9b46e5
2 changed files with 15 additions and 2 deletions

View file

@ -43,7 +43,7 @@ angular.scenario.output('xml', function(context, runner, model) {
if (step.error) {
var error = $('<error></error>');
stepContext.append(error);
error.text(formatException(stepContext.error));
error.text(formatException(step.error));
}
});
});

View file

@ -1,6 +1,6 @@
'use strict';
describe('angular.scenario.output.json', function() {
describe('angular.scenario.output.xml', function() {
var output, context;
var runner, model, $window;
var spec, step;
@ -33,4 +33,17 @@ describe('angular.scenario.output.json', function() {
expect(context.find('it').attr('status')).toEqual('success');
expect(context.find('it step').attr('status')).toEqual('success');
});
it('should output errors to the XML', function() {
runner.emit('SpecBegin', spec);
runner.emit('StepBegin', spec, step);
runner.emit('StepFailure', spec, step, 'error reason');
runner.emit('StepEnd', spec, step);
runner.emit('SpecEnd', spec);
runner.emit('RunnerEnd');
expect(context.find('it').attr('status')).toEqual('failure');
expect(context.find('it step').attr('status')).toEqual('failure');
expect(context.find('it step').text()).toEqual('error reason');
});
});