Skip to content

Commit

Permalink
Refactor mergeTestDescriptions() test utility to migrate to ESM (#7035
Browse files Browse the repository at this point in the history
)

`mergeTestDescriptions()` is used by deprecated rules.
So I've created this commit from the `v16` branch, instead of the `main` branch.

This change enables the `esModuleInterop` flag to prevent the following TypeScript error:

```
lib/testUtils/mergeTestDescriptions.mjs:1:8 - error TS1259: Module '"/Users/masafumi.koba/git/stylelint/stylelint/node_modules/deepmerge/index"' can only be default-imported using the 'esModuleInterop' flag

1 import merge from 'deepmerge';
         ~~~~~

  node_modules/deepmerge/index.d.ts:20:1
    20 export = deepmerge;
       ~~~~~~~~~~~~~~~~~~~
    This module is declared with 'export =', and can only be used with a default import when using the 'esModuleInterop' flag.
```
  • Loading branch information
ybiquitous committed Jul 13, 2023
1 parent 69803fb commit bd176da
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 17 deletions.
2 changes: 1 addition & 1 deletion lib/rules/at-rule-empty-line-before/__tests__/index.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { stripIndent } from 'common-tags';

import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.js';
import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.mjs';
import rule from '../index.js';
const { messages, ruleName } = rule;

Expand Down
2 changes: 1 addition & 1 deletion lib/rules/color-hex-length/__tests__/index.mjs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.js';
import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.mjs';
import naiveCssInJs from '../../../__tests__/fixtures/postcss-naive-css-in-js.js';

import rule from '../index.js';
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/comment-empty-line-before/__tests__/index.mjs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.js';
import mergeTestDescriptions from '../../../testUtils/mergeTestDescriptions.mjs';
import rule from '../index.js';
const { messages, ruleName } = rule;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
'use strict';

const mergeTestDescriptions = require('../mergeTestDescriptions');
import mergeTestDescriptions from '../mergeTestDescriptions.mjs';

describe('mergeTestDescriptions', () => {
it('merges empty objects', () => {
Expand Down
11 changes: 0 additions & 11 deletions lib/testUtils/mergeTestDescriptions.js

This file was deleted.

9 changes: 9 additions & 0 deletions lib/testUtils/mergeTestDescriptions.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import merge from 'deepmerge';

/**
* @param {...object} args
* @returns {object}
*/
export default function mergeTestDescriptions(...args) {
return merge.all(args);
}

0 comments on commit bd176da

Please sign in to comment.