Testing JSON Prettification Implementation in Insomnia
This test suite validates the JSON prettification functionality in Insomnia, ensuring proper formatting of JSON data. It uses a fixture-based approach to test various JSON formatting scenarios systematically and comprehensively.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
kong/insomnia
packages/insomnia/src/utils/prettify/json.test.ts
import fs from 'fs';
import path from 'path';
import { describe, expect, it } from 'vitest';
import { jsonPrettify } from './json';
describe('jsonPrettify()', () => {
const basePath = path.join(__dirname, './fixtures');
const files = fs.readdirSync(basePath);
for (const file of files) {
if (!file.match(/-input\.json$/)) {
continue;
}
const slug = file.replace(/-input\.json$/, '');
const name = slug.replace(/-/g, ' ');
it(`handles ${name}`, () => {
const input = fs.readFileSync(path.join(basePath, `${slug}-input.json`), 'utf8').trim();
const output = fs.readFileSync(path.join(basePath, `${slug}-output.json`), 'utf8').trim();
const result = jsonPrettify(input, ' ');
expect(result).toBe(output);
});
}
});