|
37 | 37 |
|
38 | 38 | const fs = require('fs'); |
39 | 39 | const path = require('path'); |
40 | | -const prettier = require('prettier'); |
41 | 40 | const { |
42 | 41 | categorizeUnitTestMessage, |
43 | 42 | categorizeIntegrationTestMessage, |
@@ -160,22 +159,25 @@ class ConsoleBaselineReporter { |
160 | 159 | } |
161 | 160 |
|
162 | 161 | const baseline = { |
| 162 | + files: mergedFiles, |
163 | 163 | generated: new Date().toISOString(), |
164 | 164 | nodeVersion: process.version, |
165 | | - files: mergedFiles, |
166 | 165 | }; |
167 | 166 |
|
168 | | - // Format with Prettier to ensure consistent output that passes lint |
169 | | - const jsonString = JSON.stringify(baseline, null, 2); |
170 | | - const formatted = prettier.format(jsonString, { parser: 'json' }); |
171 | | - fs.writeFileSync(baselinePath, formatted); |
172 | | - |
173 | | - const filesUpdated = Object.keys(this.warningsByFile).length; |
174 | | - const totalFilesInBaseline = Object.keys(mergedFiles).length; |
175 | | - console.log( |
176 | | - `\n✅ Baseline updated: ${filesUpdated} file(s) updated, ${totalFilesInBaseline} total in baseline`, |
177 | | - ); |
178 | | - console.log(` Written to: ${baselinePath}\n`); |
| 167 | + if (JSON.stringify(mergedFiles) === JSON.stringify(this.baseline.files)) { |
| 168 | + console.log(`\n✅ Baseline is up-to-date, no changes needed.\n`); |
| 169 | + } else { |
| 170 | + // Write JSON with 2-space indentation and trailing newline (matches Prettier) |
| 171 | + const jsonString = `${JSON.stringify(baseline, null, 2)}\n`; |
| 172 | + fs.writeFileSync(baselinePath, jsonString); |
| 173 | + |
| 174 | + const filesUpdated = Object.keys(this.warningsByFile).length; |
| 175 | + const totalFilesInBaseline = Object.keys(mergedFiles).length; |
| 176 | + console.log( |
| 177 | + `\n✅ Baseline updated: ${filesUpdated} file(s) updated, ${totalFilesInBaseline} total in baseline`, |
| 178 | + ); |
| 179 | + console.log(` Written to: ${baselinePath}\n`); |
| 180 | + } |
179 | 181 | } |
180 | 182 |
|
181 | 183 | // =========================================================================== |
|
0 commit comments