Skip to content

Commit

Permalink
test: fix snapshots
Browse files Browse the repository at this point in the history
  • Loading branch information
rushelex committed Oct 18, 2024
1 parent a6d33c8 commit ed388b2
Show file tree
Hide file tree
Showing 7 changed files with 79 additions and 25 deletions.
3 changes: 1 addition & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
},
"dependencies": {
"@rollup/pluginutils": "5.1.2",
"@types/picomatch": "3.0.1",
"picocolors": "1.1.1",
"picomatch": "4.0.2"
},
Expand All @@ -82,7 +83,6 @@
"@semantic-release/git": "10.0.1",
"@types/lodash-es": "4.17.12",
"@types/node": "20.14.8",
"@types/picomatch": "3.0.1",
"cross-env": "7.0.3",
"eslint": "9.12.0",
"eslint-plugin-format": "0.1.2",
Expand Down
2 changes: 1 addition & 1 deletion src/utils/formatters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ function PrettyFormatter(config?: PrettyFormatterConfig): Formatter {
group += color.yellow(entryModuleId);

for (const currentCir of moduleNodes) {
group += `\n` + ` ${currentCir.join(color.blue(' -> '))}`;
group += `\n` + ` ${currentCir.join(` ${color.blue('->')} `)}`;
}

groups.push(group);
Expand Down
60 changes: 41 additions & 19 deletions test/src/__snapshots__/main.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -47,45 +47,45 @@ exports[`main test > should call lifecycle callbacks 1`] = `
]
}
[circularDependencies] onEnd | formattedOutput :>> src/fixtures/data/async_module/circleDep/data/data1.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data2.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data2.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
src/fixtures/data/async_module/circleDep/data/data1.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data2.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data2.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
"
`;
Expand All @@ -94,24 +94,24 @@ exports[`main test > should print basic output in console 1`] = `
"
src/fixtures/data/async_module/circleDep/data/data1.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data2.js[34m -> [39msrc/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data2.js [34m->[39m src/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js[34m -> [39msrc/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js [34m->[39m src/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js[34m -> [39msrc/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js [34m->[39m src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js
"
`;
Expand Down Expand Up @@ -218,7 +218,29 @@ exports[`main test > should print json output in console 1`] = `
"
`;

exports[`main test > should print pretty output in file 1`] = `
exports[`main test > should print pretty colored output in file 1`] = `
"src/fixtures/data/async_module/circleDep/data/data1.js
src/fixtures/data/async_module/circleDep/data/data1.js -> src/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js -> src/fixtures/data/async_module/circleDep/data/data3.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/depSelf/depSelf.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js
src/fixtures/data/async_module/indirectCircleDep/data/data1.js -> src/fixtures/data/async_module/indirectCircleDep/data/data2.js -> src/fixtures/data/async_module/indirectCircleDep/data/data3.js
src/fixtures/data/sync_module/circleDep/circleDep1.js
src/fixtures/data/sync_module/circleDep/circleDep1.js -> src/fixtures/data/sync_module/circleDep/circleDep2.js
src/fixtures/data/sync_module/circleDep/circleDep1.js -> src/fixtures/data/sync_module/circleDep/circleDep3.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/depSelf/depSelf1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js
src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep1.js -> src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep2.js -> src/fixtures/data/sync_module/indirectCircleDep/indirectCircleDep3.js"
`;

exports[`main test > should print pretty uncolored output in file 1`] = `
"src/fixtures/data/async_module/circleDep/data/data1.js
src/fixtures/data/async_module/circleDep/data/data1.js -> src/fixtures/data/async_module/circleDep/data/data2.js
src/fixtures/data/async_module/circleDep/data/data1.js -> src/fixtures/data/async_module/circleDep/data/data3.js
Expand Down
23 changes: 23 additions & 0 deletions test/src/fixtures/configs/rollup.output.file.pretty.colored.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import typescript from '@rollup/plugin-typescript';
import type { RollupOptions } from 'rollup';
import circularDependencies, { DefaultFormatters } from 'rollup-plugin-circular-dependencies';

import { OUTPUT_FILE_RELATIVE_PATH } from '../../utils.js';

const config: RollupOptions = {
input: 'src/fixtures/data/index.ts',
output: {
dir: 'dist',
format: 'esm',
},
plugins: [
typescript(),
circularDependencies({
throwOnError: false,
outputFilePath: OUTPUT_FILE_RELATIVE_PATH,
formatOut: DefaultFormatters.Pretty({ colors: true }),
}),
],
};

export default config;
14 changes: 12 additions & 2 deletions test/src/main.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,18 @@ describe('main test', () => {
expect(stderr.toString().includes(CIRCULAR_DEPS_ERROR)).toBeTruthy();
});

it('should print pretty output in file', () => {
const { stderr } = getRollupRunningProcess('output.file.pretty');
it('should print pretty colored output in file', () => {
const { stderr } = getRollupRunningProcess('output.file.pretty.colored');

const outputContent = readFileSync(testOutputFilePath, { encoding: 'utf-8' });

expect(outputContent).toMatchSnapshot();

expect(stderr.toString().includes(CIRCULAR_DEPS_ERROR)).toBeTruthy();
});

it('should print pretty uncolored output in file', () => {
const { stderr } = getRollupRunningProcess('output.file.pretty.uncolored');

const outputContent = readFileSync(testOutputFilePath, { encoding: 'utf-8' });

Expand Down

0 comments on commit ed388b2

Please sign in to comment.