From b1f1fca4ef19396e02979de2b1d9848454fa2b83 Mon Sep 17 00:00:00 2001 From: Daniel Tschinder <231804+danez@users.noreply.github.com> Date: Mon, 14 Aug 2023 13:19:01 +0000 Subject: [PATCH] chore: more tests for pnpm workspace definitions --- .../more-packages/pkg-g/package.json | 4 ++++ .../more-packages/pkg-h/package.json | 4 ++++ .../other-packages/pkg-c/package.json | 7 ++++++ .../other-packages/pkg-d/package.json | 5 +++++ .../subfolder/pkg-x/package.json | 4 ++++ .../{ => subfolder}/pkg-b/package.json | 2 +- .../pnpm-workspace-base/pkg-e/package.json | 5 +++++ .../pnpm-workspace-base/pkg-f/package.json | 4 ++++ .../pnpm-workspace-base/pnpm-workspace.yaml | 7 +++++- packages/get-packages/src/index.test.ts | 22 ++++++++++++++++++- 10 files changed, 61 insertions(+), 3 deletions(-) create mode 100644 __fixtures__/pnpm-workspace-base/more-packages/pkg-g/package.json create mode 100644 __fixtures__/pnpm-workspace-base/more-packages/pkg-h/package.json create mode 100644 __fixtures__/pnpm-workspace-base/other-packages/pkg-c/package.json create mode 100644 __fixtures__/pnpm-workspace-base/other-packages/pkg-d/package.json create mode 100644 __fixtures__/pnpm-workspace-base/other-packages/subfolder/pkg-x/package.json rename __fixtures__/pnpm-workspace-base/packages/{ => subfolder}/pkg-b/package.json (95%) create mode 100644 __fixtures__/pnpm-workspace-base/pkg-e/package.json create mode 100644 __fixtures__/pnpm-workspace-base/pkg-f/package.json diff --git a/__fixtures__/pnpm-workspace-base/more-packages/pkg-g/package.json b/__fixtures__/pnpm-workspace-base/more-packages/pkg-g/package.json new file mode 100644 index 00000000..16d94d20 --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/more-packages/pkg-g/package.json @@ -0,0 +1,4 @@ +{ + "name": "pnpm-workspace-base-pkg-g", + "version": "1.0.0" +} diff --git a/__fixtures__/pnpm-workspace-base/more-packages/pkg-h/package.json b/__fixtures__/pnpm-workspace-base/more-packages/pkg-h/package.json new file mode 100644 index 00000000..39fd5856 --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/more-packages/pkg-h/package.json @@ -0,0 +1,4 @@ +{ + "name": "pnpm-workspace-base-pkg-h", + "version": "1.0.0" +} diff --git a/__fixtures__/pnpm-workspace-base/other-packages/pkg-c/package.json b/__fixtures__/pnpm-workspace-base/other-packages/pkg-c/package.json new file mode 100644 index 00000000..29afceca --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/other-packages/pkg-c/package.json @@ -0,0 +1,7 @@ +{ + "name": "pnpm-workspace-base-pkg-c", + "version": "1.0.0", + "dependencies": { + "pnpm-workspace-base-pkg-d": "1.0.0" + } +} diff --git a/__fixtures__/pnpm-workspace-base/other-packages/pkg-d/package.json b/__fixtures__/pnpm-workspace-base/other-packages/pkg-d/package.json new file mode 100644 index 00000000..09ca28c1 --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/other-packages/pkg-d/package.json @@ -0,0 +1,5 @@ + +{ + "name": "pnpm-workspace-base-pkg-d", + "version": "1.0.0" +} diff --git a/__fixtures__/pnpm-workspace-base/other-packages/subfolder/pkg-x/package.json b/__fixtures__/pnpm-workspace-base/other-packages/subfolder/pkg-x/package.json new file mode 100644 index 00000000..2d0bb1fc --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/other-packages/subfolder/pkg-x/package.json @@ -0,0 +1,4 @@ +{ + "name": "pnpm-workspace-base-pkg-x", + "version": "1.0.0" +} diff --git a/__fixtures__/pnpm-workspace-base/packages/pkg-b/package.json b/__fixtures__/pnpm-workspace-base/packages/subfolder/pkg-b/package.json similarity index 95% rename from __fixtures__/pnpm-workspace-base/packages/pkg-b/package.json rename to __fixtures__/pnpm-workspace-base/packages/subfolder/pkg-b/package.json index a69a30b5..254a70ee 100644 --- a/__fixtures__/pnpm-workspace-base/packages/pkg-b/package.json +++ b/__fixtures__/pnpm-workspace-base/packages/subfolder/pkg-b/package.json @@ -1,4 +1,4 @@ - + { "name": "pnpm-workspace-base-pkg-b", "version": "1.0.0" diff --git a/__fixtures__/pnpm-workspace-base/pkg-e/package.json b/__fixtures__/pnpm-workspace-base/pkg-e/package.json new file mode 100644 index 00000000..b5f15d3e --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/pkg-e/package.json @@ -0,0 +1,5 @@ +{ + "name": "pnpm-workspace-base-pkg-e", + "version": "1.0.0", + "private": true +} diff --git a/__fixtures__/pnpm-workspace-base/pkg-f/package.json b/__fixtures__/pnpm-workspace-base/pkg-f/package.json new file mode 100644 index 00000000..385d885d --- /dev/null +++ b/__fixtures__/pnpm-workspace-base/pkg-f/package.json @@ -0,0 +1,4 @@ +{ + "name": "pnpm-workspace-base-pkg-f", + "version": "1.0.0" +} diff --git a/__fixtures__/pnpm-workspace-base/pnpm-workspace.yaml b/__fixtures__/pnpm-workspace-base/pnpm-workspace.yaml index 03833fc6..6dc29720 100644 --- a/__fixtures__/pnpm-workspace-base/pnpm-workspace.yaml +++ b/__fixtures__/pnpm-workspace-base/pnpm-workspace.yaml @@ -1,2 +1,7 @@ packages: - - '**' + - 'packages/**' + - 'other-packages/*' + - 'pkg-e/' + - 'pkg-f' + - 'more-packages/pkg-g' + - 'more-packages/pkg-h/' diff --git a/packages/get-packages/src/index.test.ts b/packages/get-packages/src/index.test.ts index cd1dd792..d6daf926 100644 --- a/packages/get-packages/src/index.test.ts +++ b/packages/get-packages/src/index.test.ts @@ -60,12 +60,32 @@ let runTests = (getPackages: GetPackages) => { return expect(allPackages.packages).not.toBeNull(); } + expect(allPackages.packages).toHaveLength(8); + expect(allPackages.packages[0].packageJson.name).toEqual( - "pnpm-workspace-base-pkg-a" + "pnpm-workspace-base-pkg-g" ); expect(allPackages.packages[1].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-h" + ); + expect(allPackages.packages[2].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-c" + ); + expect(allPackages.packages[3].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-d" + ); + expect(allPackages.packages[4].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-a" + ); + expect(allPackages.packages[5].packageJson.name).toEqual( "pnpm-workspace-base-pkg-b" ); + expect(allPackages.packages[6].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-e" + ); + expect(allPackages.packages[7].packageJson.name).toEqual( + "pnpm-workspace-base-pkg-f" + ); expect(allPackages.tool.type).toEqual("pnpm"); });