Skip to content

Commit

Permalink
style: require-array-sort-compare for non-strings
Browse files Browse the repository at this point in the history
  • Loading branch information
zkochan committed May 20, 2023
1 parent 6ce3424 commit bac9712
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 5 deletions.
1 change: 0 additions & 1 deletion __utils__/eslint-config/eslint.json
Expand Up @@ -47,7 +47,6 @@
}
],
"@typescript-eslint/triple-slash-reference": "off",
"@typescript-eslint/require-array-sort-compare": "off",
"@typescript-eslint/no-non-null-assertion": "off",
"@typescript-eslint/consistent-type-assertions": "off",
"@typescript-eslint/strict-boolean-expressions": "off",
Expand Down
14 changes: 10 additions & 4 deletions fs/find-packages/test/index.ts
Expand Up @@ -2,6 +2,12 @@
import path from 'path'
import { findPackages } from '@pnpm/fs.find-packages'

function compare (a: string | undefined, b: string | undefined) {
if (a == null) return 1
if (b == null) return -1
return a.localeCompare(b)
}

const fixtures = path.join(__dirname, 'fixtures')

test('finds package', async () => {
Expand All @@ -22,23 +28,23 @@ test('finds packages by patterns', async () => {
expect(pkgs[0].manifest).toBeDefined()
expect(pkgs[1].dir).toBeDefined()
expect(pkgs[1].manifest).toBeDefined()
expect([pkgs[0].manifest.name, pkgs[1].manifest.name].sort()).toStrictEqual(['component-1', 'component-2'])
expect([pkgs[0].manifest.name, pkgs[1].manifest.name].sort(compare)).toStrictEqual(['component-1', 'component-2'])
})

test('finds packages by * pattern', async () => {
const root = path.join(fixtures, 'many-pkgs-2')
const pkgs = await findPackages(root, { patterns: ['.', 'components/*'] })

expect(pkgs).toHaveLength(3)
expect([pkgs[0].manifest.name, pkgs[1].manifest.name, pkgs[2].manifest.name].sort()).toStrictEqual(['component-1', 'component-2', 'many-pkgs-2'])
expect([pkgs[0].manifest.name, pkgs[1].manifest.name, pkgs[2].manifest.name].sort(compare)).toStrictEqual(['component-1', 'component-2', 'many-pkgs-2'])
})

test('finds packages by default pattern', async () => {
const root = path.join(fixtures, 'many-pkgs-2')
const pkgs = await findPackages(root)

expect(pkgs).toHaveLength(4)
expect(pkgs.map(({ manifest }) => manifest.name).sort()).toStrictEqual(['component-1', 'component-2', 'foo', 'many-pkgs-2'])
expect(pkgs.map(({ manifest }) => manifest.name).sort(compare)).toStrictEqual(['component-1', 'component-2', 'foo', 'many-pkgs-2'])
})

test('ignore packages by patterns', async () => {
Expand All @@ -50,7 +56,7 @@ test('ignore packages by patterns', async () => {
expect(pkgs[0].manifest).toBeDefined()
expect(pkgs[1].dir).toBeDefined()
expect(pkgs[1].manifest).toBeDefined()
expect([pkgs[0].manifest.name, pkgs[1].manifest.name].sort()).toStrictEqual(['component-1', 'component-2'])
expect([pkgs[0].manifest.name, pkgs[1].manifest.name].sort(compare)).toStrictEqual(['component-1', 'component-2'])
})

test('json and yaml manifests are also found', async () => {
Expand Down

0 comments on commit bac9712

Please sign in to comment.