Handle missing Symfony Insight grade gracefully (#3933)

This commit is contained in:
Pierre-Yves B
2019-09-03 09:49:00 +01:00
committed by GitHub
parent 94fdb81d1c
commit 4190609d1b
3 changed files with 14 additions and 1 deletions

View File

@@ -30,7 +30,7 @@ module.exports = class SymfonyInsightGrade extends SymfonyInsightBase {
]
}
static render({ status, grade }) {
static render({ status, grade = 'none' }) {
const label = 'grade'
if (status !== 'finished' && status !== '') {
return {

View File

@@ -14,6 +14,7 @@ const {
silverMockResponse,
bronzeMockResponse,
noMedalMockResponse,
noGradeMockResponse,
criticalViolation,
majorViolation,
minorViolation,
@@ -203,6 +204,16 @@ describe('SymfonyInsight[Grade|Stars|Violation]', function() {
},
})
testBadges({
description: 'no medal',
response: noGradeMockResponse,
expectedGradeBadge: {
label: 'grade',
message: 'no medal',
color: 'red',
},
})
testBadges({
description: 'critical violations',
response: criticalViolation,

View File

@@ -38,6 +38,7 @@ const bronzeMockResponse = createMockResponse({
const noMedalMockResponse = createMockResponse({
grade: 'none',
})
const noGradeMockResponse = createMockResponse({})
const criticalViolation = createMockResponse({
violations: [
{
@@ -106,6 +107,7 @@ module.exports = {
silverMockResponse,
bronzeMockResponse,
noMedalMockResponse,
noGradeMockResponse,
criticalViolation,
majorViolation,
minorViolation,