mirror of
https://github.com/liabru/matter-js.git
synced 2025-02-07 19:06:26 -05:00
added filesize to test comparison report
This commit is contained in:
parent
55feb89f95
commit
b3a8aa3cae
3 changed files with 25 additions and 14 deletions
|
@ -75,8 +75,11 @@ const runExample = options => {
|
||||||
totalDuration += duration[0] * 1e9 + duration[1];
|
totalDuration += duration[0] * 1e9 + duration[1];
|
||||||
totalMemory += process.memoryUsage().heapUsed;
|
totalMemory += process.memoryUsage().heapUsed;
|
||||||
|
|
||||||
for (let p = 0; p < engine.pairs.list.length; p += 1) {
|
const pairsList = engine.pairs.list;
|
||||||
const pair = engine.pairs.list[p];
|
const pairsListLength = engine.pairs.list.length;
|
||||||
|
|
||||||
|
for (let p = 0; p < pairsListLength; p += 1) {
|
||||||
|
const pair = pairsList[p];
|
||||||
const separation = pair.separation - pair.slop;
|
const separation = pair.separation - pair.slop;
|
||||||
|
|
||||||
if (pair.isActive && !pair.isSensor) {
|
if (pair.isActive && !pair.isSensor) {
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
|
|
||||||
jest.setTimeout(30 * 1000);
|
jest.setTimeout(30 * 1000);
|
||||||
|
|
||||||
|
const fs = require('fs');
|
||||||
|
|
||||||
const {
|
const {
|
||||||
comparisonReport,
|
comparisonReport,
|
||||||
logReport,
|
logReport,
|
||||||
|
@ -54,11 +56,14 @@ afterAll(async () => {
|
||||||
const dev = await capturesDev;
|
const dev = await capturesDev;
|
||||||
const build = await capturesBuild;
|
const build = await capturesBuild;
|
||||||
|
|
||||||
|
const buildSize = fs.statSync('./build/matter.min.js').size;
|
||||||
|
const devSize = fs.statSync('./build/matter.dev.min.js').size;
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
'Examples ran against previous release and current version\n\n'
|
'Examples ran against previous release and current build\n\n'
|
||||||
+ logReport(build, `release`) + '\n'
|
+ logReport(build, `release`) + '\n'
|
||||||
+ logReport(dev, `current`) + '\n'
|
+ logReport(dev, `current`) + '\n'
|
||||||
+ comparisonReport(dev, build, MatterBuild.version, saveComparison)
|
+ comparisonReport(dev, build, devSize, buildSize, MatterBuild.version, saveComparison)
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -228,7 +228,7 @@ const logReport = (captures, version) => {
|
||||||
+ (report ? report : ' None\n');
|
+ (report ? report : ' None\n');
|
||||||
};
|
};
|
||||||
|
|
||||||
const comparisonReport = (capturesDev, capturesBuild, buildVersion, save) => {
|
const comparisonReport = (capturesDev, capturesBuild, devSize, buildSize, buildVersion, save) => {
|
||||||
const similaritys = captureSimilarityExtrinsic(capturesDev, capturesBuild);
|
const similaritys = captureSimilarityExtrinsic(capturesDev, capturesBuild);
|
||||||
const similarityEntries = Object.entries(similaritys);
|
const similarityEntries = Object.entries(similaritys);
|
||||||
const devIntrinsicsChanged = {};
|
const devIntrinsicsChanged = {};
|
||||||
|
@ -267,8 +267,10 @@ const comparisonReport = (capturesDev, capturesBuild, buildVersion, save) => {
|
||||||
capturePerformance.sort((a, b) => a.name.localeCompare(b.name));
|
capturePerformance.sort((a, b) => a.name.localeCompare(b.name));
|
||||||
similarityEntries.sort((a, b) => a[1] - b[1]);
|
similarityEntries.sort((a, b) => a[1] - b[1]);
|
||||||
|
|
||||||
let perfChange = noiseThreshold(1 - (totalTimeDev / totalTimeBuild), 0.01);
|
const perfChange = noiseThreshold(1 - (totalTimeDev / totalTimeBuild), 0.01);
|
||||||
let memoryChange = noiseThreshold((totalMemoryDev / totalMemoryBuild) - 1, 0.01);
|
const memoryChange = noiseThreshold((totalMemoryDev / totalMemoryBuild) - 1, 0.01);
|
||||||
|
const overlapChange = (totalOverlapDev / (totalOverlapBuild || 1)) - 1;
|
||||||
|
const filesizeChange = (devSize / buildSize) - 1;
|
||||||
|
|
||||||
let similarityAvg = 0;
|
let similarityAvg = 0;
|
||||||
similarityEntries.forEach(([_, similarity]) => {
|
similarityEntries.forEach(([_, similarity]) => {
|
||||||
|
@ -277,20 +279,21 @@ const comparisonReport = (capturesDev, capturesBuild, buildVersion, save) => {
|
||||||
|
|
||||||
similarityAvg /= similarityEntries.length;
|
similarityAvg /= similarityEntries.length;
|
||||||
|
|
||||||
const overlapChange = (totalOverlapDev / (totalOverlapBuild || 1)) - 1;
|
|
||||||
|
|
||||||
const report = (breakEvery, format) => [
|
const report = (breakEvery, format) => [
|
||||||
[`Output comparison of ${similarityEntries.length}`,
|
[`Output comparison of ${similarityEntries.length}`,
|
||||||
`examples against previous release ${format('matter-js@' + buildVersion, colors.Yellow)}`
|
`examples against previous release ${format('matter-js@' + buildVersion, colors.Yellow)}`
|
||||||
].join(' '),
|
].join(' '),
|
||||||
`\n\n${format('Similarity', colors.White)}`,
|
`\n\n${format('Similarity', colors.White)}`,
|
||||||
`${format(toPercent(similarityAvg), similarityAvg === 1 ? colors.Green : colors.Yellow)}%`,
|
`${format(toPercent(similarityAvg), similarityAvg === 1 ? colors.Green : colors.Yellow)}%`,
|
||||||
`${format('Performance', colors.White)}`,
|
|
||||||
`${format((perfChange >= 0 ? '+' : '-') + toPercentRound(Math.abs(perfChange)), perfChange >= 0 ? colors.Green : colors.Red)}%`,
|
|
||||||
`${format('Memory', colors.White)}`,
|
|
||||||
`${format((memoryChange >= 0 ? '+' : '-') + toPercentRound(Math.abs(memoryChange)), memoryChange <= 0 ? colors.Green : colors.Red)}%`,
|
|
||||||
`${format('Overlap', colors.White)}`,
|
`${format('Overlap', colors.White)}`,
|
||||||
`${format((overlapChange >= 0 ? '+' : '-') + toPercent(Math.abs(overlapChange)), overlapChange <= 0 ? colors.Green : colors.Red)}%`,
|
`${format((overlapChange >= 0 ? '+' : '-') + toPercent(Math.abs(overlapChange)), overlapChange <= 0 ? colors.Green : colors.Yellow)}%`,
|
||||||
|
`${format('Performance', colors.White)}`,
|
||||||
|
`${format((perfChange >= 0 ? '+' : '-') + toPercentRound(Math.abs(perfChange)), perfChange >= 0 ? colors.Green : colors.Yellow)}%`,
|
||||||
|
`${format('Memory', colors.White)}`,
|
||||||
|
`${format((memoryChange >= 0 ? '+' : '-') + toPercentRound(Math.abs(memoryChange)), memoryChange <= 0 ? colors.Green : colors.Yellow)}%`,
|
||||||
|
`${format('Filesize', colors.White)}`,
|
||||||
|
`${format((filesizeChange >= 0 ? '+' : '-') + toPercent(Math.abs(filesizeChange)), filesizeChange <= 0 ? colors.Green : colors.Yellow)}%`,
|
||||||
|
`${format(`${(devSize / 1024).toPrecision(4)} KB`, colors.White)}`,
|
||||||
capturePerformance.reduce((output, p, i) => {
|
capturePerformance.reduce((output, p, i) => {
|
||||||
output += `${p.name} `;
|
output += `${p.name} `;
|
||||||
output += `${similarityRatings(similaritys[p.name])} `;
|
output += `${similarityRatings(similaritys[p.name])} `;
|
||||||
|
|
Loading…
Add table
Reference in a new issue