Don't display late errors as AfterAll errors in the HTML reporter

This commit is contained in:
Steve Gravrock
2021-09-11 08:57:50 -07:00
parent d092a59bd1
commit 6e10f22403
7 changed files with 82 additions and 20 deletions

View File

@@ -534,9 +534,11 @@ describe('Env integration', function() {
expect(errors[0].message)
.withContext('top beforeAll')
.toContain(message);
expect(errors[0].globalErrorType).toEqual('lateError');
expect(errors[1].message)
.withContext('top afterAll')
.toContain(message);
expect(errors[1].globalErrorType).toEqual('lateError');
done();
});
});
@@ -568,9 +570,11 @@ describe('Env integration', function() {
expect(errors[0].message)
.withContext('suite beforeAll')
.toContain(message);
expect(errors[0].globalErrorType).toEqual('lateError');
expect(errors[1].message)
.withContext('suite afterAll')
.toContain(message);
expect(errors[1].globalErrorType).toEqual('lateError');
done();
});
});
@@ -605,12 +609,15 @@ describe('Env integration', function() {
expect(errors[0].message)
.withContext('error caused by beforeEach')
.toContain(message);
expect(errors[0].globalErrorType).toEqual('lateError');
expect(errors[1].message)
.withContext('error caused by it')
.toContain(message);
expect(errors[1].globalErrorType).toEqual('lateError');
expect(errors[2].message)
.withContext('error caused by afterEach')
.toContain(message);
expect(errors[2].globalErrorType).toEqual('lateError');
done();
});
});
@@ -634,6 +641,7 @@ describe('Env integration', function() {
.failedExpectations;
expect(errors.length).toEqual(1);
expect(errors[0].message).toContain(message);
expect(errors[0].globalErrorType).toEqual('lateError');
done();
});
});

View File

@@ -704,6 +704,50 @@ describe('HtmlReporter', function() {
expect(alertBars[2].innerHTML).not.toMatch(/line/);
});
it('does not display the "AfterAll" prefix for other error types', function() {
const container = document.createElement('div');
const getContainer = function() {
return container;
};
const reporter = new jasmineUnderTest.HtmlReporter({
env: env,
getContainer: getContainer,
createElement: function() {
return document.createElement.apply(document, arguments);
},
createTextNode: function() {
return document.createTextNode.apply(document, arguments);
}
});
reporter.initialize();
reporter.jasmineStarted({});
reporter.jasmineDone({
failedExpectations: [
{ message: 'load error', globalErrorType: 'load' },
{
message: 'lateExpectation error',
globalErrorType: 'lateExpectation'
},
{ message: 'lateError error', globalErrorType: 'lateError' }
]
});
const alertBars = container.querySelectorAll(
'.jasmine-alert .jasmine-bar'
);
expect(alertBars.length).toEqual(4);
expect(alertBars[1].textContent).toContain('load error');
expect(alertBars[2].textContent).toContain('lateExpectation error');
expect(alertBars[3].textContent).toContain('lateError error');
for (let bar of alertBars) {
expect(bar.textContent).not.toContain('AfterAll');
}
});
it('displays file and line information if available', function() {
var container = document.createElement('div'),
getContainer = function() {