diff --git a/dist/index.js b/dist/index.js index 840dc85f..dd78e3d4 100644 --- a/dist/index.js +++ b/dist/index.js @@ -30688,9 +30688,9 @@ module.exports.createBodyForComparisonWithJumpDeltas = function(evaluationResult lines.push('', '', '', '', '') lines.push( - `| Metric | Curr: ${currentBenchmark.commitInfo.id} | Prev: ${previousBenchmark.commitInfo.id} | Max. Jump | Was | Res | ` + `| Metric | Curr: ${currentBenchmark.commitInfo.id} | Prev: ${previousBenchmark.commitInfo.id} | Max. Jump | Was | Res | ` ) - lines.push('|-|-|-|-|-|-|-|') + lines.push('|-|-|-|-|-|-|') const evaluationResults = evaluationResult.results.result const evaluationParameters = evaluationResult.evalParameters @@ -30700,21 +30700,25 @@ module.exports.createBodyForComparisonWithJumpDeltas = function(evaluationResult const resultStatus = evaluationResults[i]; const metricName = evaluationParameters.metricNames[i]; const metricUnit = evaluationParameters.metricUnits[i]; - const actualValue = parseFloat(evaluationParameters.is[i]).toFixed(2); + + const currValue = currentBenchmark.results[i].value; + const prevValue = previousBenchmark.results[i].value; + + const currPlusUnit = currValue + ' ' + metricUnit; + const prevPlusUnit = prevValue + ' ' + metricUnit; const shouldBe = evaluationParameters.shouldBe[i]; const ratio = evaluationParameters.is[i]; - const previousBenchRes = parseFloat(evaluationParameters.than[i]).toFixed(2); - const prevBenchValAndUnit = previousBenchRes + ' ' + metricUnit; + let line - let valueAndUnit = actualValue + ' ' + metricUnit + if (resultStatus === 'failed' || resultStatus === 'passed') { let betterOrWorse = resultStatus === 'passed' ? '🟢' : '🔴' - line = `| \`${metricName}\` | \`${valueAndUnit}\` | \`${prevBenchValAndUnit}\` | ${shouldBe} | ${ratio} | ${betterOrWorse} |` + line = `| \`${metricName}\` | \`${currPlusUnit}\` | \`${prevPlusUnit}\` | ${shouldBe} | ${ratio} | ${betterOrWorse} |` } else { - line = `| \`${metricName}\` | \'${valueAndUnit}\' | N/A | N/A | N/A | 🔘 |` + line = `| \`${metricName}\` | \'${currPlusUnit}\' | N/A | N/A | N/A | 🔘 |` } lines.push(line) @@ -32403,7 +32407,7 @@ module.exports.evaluateWithJumpDetection = function (currentBenchmarkData, confi shouldBe.push(threshold); if (previousResult) { - const ratio = (currentValue / previousResult.value - 1) * 100; + const ratio = Math.abs((currentValue / previousResult.value - 1) * 100); ratios.push(ratio.toFixed(2)); const isPassed = Math.abs(ratio) < threshold; evaluationResults.push(isPassed ? 'passed' : 'failed'); diff --git a/src/comment.js b/src/comment.js index 9051ae0a..96336a8c 100644 --- a/src/comment.js +++ b/src/comment.js @@ -276,9 +276,9 @@ module.exports.createBodyForComparisonWithJumpDeltas = function(evaluationResult lines.push('', '', '', '', '') lines.push( - `| Metric | Curr: ${currentBenchmark.commitInfo.id} | Prev: ${previousBenchmark.commitInfo.id} | Max. Jump | Was | Res | ` + `| Metric | Curr: ${currentBenchmark.commitInfo.id} | Prev: ${previousBenchmark.commitInfo.id} | Max. Jump | Was | Res | ` ) - lines.push('|-|-|-|-|-|-|-|') + lines.push('|-|-|-|-|-|-|') const evaluationResults = evaluationResult.results.result const evaluationParameters = evaluationResult.evalParameters @@ -288,21 +288,25 @@ module.exports.createBodyForComparisonWithJumpDeltas = function(evaluationResult const resultStatus = evaluationResults[i]; const metricName = evaluationParameters.metricNames[i]; const metricUnit = evaluationParameters.metricUnits[i]; - const actualValue = parseFloat(evaluationParameters.is[i]).toFixed(2); + + const currValue = currentBenchmark.results[i].value; + const prevValue = previousBenchmark.results[i].value; + + const currPlusUnit = currValue + ' ' + metricUnit; + const prevPlusUnit = prevValue + ' ' + metricUnit; const shouldBe = evaluationParameters.shouldBe[i]; const ratio = evaluationParameters.is[i]; - const previousBenchRes = parseFloat(evaluationParameters.than[i]).toFixed(2); - const prevBenchValAndUnit = previousBenchRes + ' ' + metricUnit; + let line - let valueAndUnit = actualValue + ' ' + metricUnit + if (resultStatus === 'failed' || resultStatus === 'passed') { let betterOrWorse = resultStatus === 'passed' ? '🟢' : '🔴' - line = `| \`${metricName}\` | \`${valueAndUnit}\` | \`${prevBenchValAndUnit}\` | ${shouldBe} | ${ratio} | ${betterOrWorse} |` + line = `| \`${metricName}\` | \`${currPlusUnit}\` | \`${prevPlusUnit}\` | ${shouldBe} | ${ratio} | ${betterOrWorse} |` } else { - line = `| \`${metricName}\` | \'${valueAndUnit}\' | N/A | N/A | N/A | 🔘 |` + line = `| \`${metricName}\` | \'${currPlusUnit}\' | N/A | N/A | N/A | 🔘 |` } lines.push(line) diff --git a/src/evaluate.js b/src/evaluate.js index 5c1f4dc4..79161a1d 100644 --- a/src/evaluate.js +++ b/src/evaluate.js @@ -240,7 +240,7 @@ module.exports.evaluateWithJumpDetection = function (currentBenchmarkData, confi shouldBe.push(threshold); if (previousResult) { - const ratio = (currentValue / previousResult.value - 1) * 100; + const ratio = Math.abs((currentValue / previousResult.value - 1) * 100); ratios.push(ratio.toFixed(2)); const isPassed = Math.abs(ratio) < threshold; evaluationResults.push(isPassed ? 'passed' : 'failed');