Skip to content

Commit f286f67

Browse files
committed
JS: Add package.json files in tests relying on node_modules
We don't extract node_modules folders by default so these tests aren't that relevant anymore, and we no longer follow node_modules resolution rules directly. Instead, these imports are resolved based on the monorepo support which simply requires a package.json file to exist. There is not a good enough reason to support node_modules directly, so we're accepting some minor regression in these tests.
1 parent 20532a6 commit f286f67

File tree

8 files changed

+28
-3
lines changed

8 files changed

+28
-3
lines changed

javascript/ql/test/library-tests/NPM/src/node_modules/a/package.json

+4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

javascript/ql/test/library-tests/NPM/src/node_modules/nested/node_modules/a/package.json

+5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

javascript/ql/test/library-tests/NPM/src/node_modules/nested/package.json

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

javascript/ql/test/library-tests/NPM/tests.expected

+10
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ dependencies
66
importedFile
77
| src/lib/tst2.js:1:1:1:13 | require("..") | src/index.js:0:0:0:0 | src/index.js |
88
| src/node_modules/nested/tst3.js:1:1:1:29 | require ... odule') | src/node_modules/third-party-module/fancy.js:0:0:0:0 | src/node_modules/third-party-module/fancy.js |
9+
| src/node_modules/nested/tst3.js:2:1:2:12 | require('a') | src/node_modules/a/index.js:0:0:0:0 | src/node_modules/a/index.js |
910
| src/node_modules/nested/tst3.js:2:1:2:12 | require('a') | src/node_modules/nested/node_modules/a/index.js:0:0:0:0 | src/node_modules/nested/node_modules/a/index.js |
1011
| src/node_modules/tst2.js:1:1:1:38 | require ... cy.js') | src/node_modules/third-party-module/fancy.js:0:0:0:0 | src/node_modules/third-party-module/fancy.js |
1112
| src/test-submodule.js:1:1:1:24 | require ... odule") | src/node_modules/parent-module/main.js:0:0:0:0 | src/node_modules/parent-module/main.js |
@@ -16,6 +17,7 @@ importedFile
1617
importedModule
1718
| src/lib/tst2.js:1:1:1:13 | require("..") | src/index.js:1:1:4:0 | <toplevel> |
1819
| src/node_modules/nested/tst3.js:1:1:1:29 | require ... odule') | src/node_modules/third-party-module/fancy.js:1:1:4:0 | <toplevel> |
20+
| src/node_modules/nested/tst3.js:2:1:2:12 | require('a') | src/node_modules/a/index.js:1:1:1:25 | <toplevel> |
1921
| src/node_modules/nested/tst3.js:2:1:2:12 | require('a') | src/node_modules/nested/node_modules/a/index.js:1:1:1:25 | <toplevel> |
2022
| src/node_modules/tst2.js:1:1:1:38 | require ... cy.js') | src/node_modules/third-party-module/fancy.js:1:1:4:0 | <toplevel> |
2123
| src/test-submodule.js:1:1:1:24 | require ... odule") | src/node_modules/parent-module/main.js:1:1:2:0 | <toplevel> |
@@ -29,10 +31,13 @@ modules
2931
| src | test-package | src/test-submodule.js:1:1:3:0 | <toplevel> |
3032
| src | test-package | src/tst2.js:1:1:1:13 | <toplevel> |
3133
| src | test-package | src/tst.js:1:1:2:38 | <toplevel> |
34+
| src/node_modules/a | a | src/node_modules/a/index.js:1:1:1:25 | <toplevel> |
3235
| src/node_modules/b | b | src/node_modules/b/lib/index.js:1:1:2:0 | <toplevel> |
3336
| src/node_modules/b | b | src/node_modules/b/lib/util.ts:1:1:2:0 | <toplevel> |
3437
| src/node_modules/c | c | src/node_modules/c/src/index.js:1:1:2:0 | <toplevel> |
3538
| src/node_modules/d | d | src/node_modules/d/main.js:1:1:2:0 | <toplevel> |
39+
| src/node_modules/nested | nested | src/node_modules/nested/tst3.js:1:1:2:13 | <toplevel> |
40+
| src/node_modules/nested/node_modules/a | a | src/node_modules/nested/node_modules/a/index.js:1:1:1:25 | <toplevel> |
3641
| src/node_modules/parent-module | parent-module | src/node_modules/parent-module/main.js:1:1:2:0 | <toplevel> |
3742
| src/node_modules/parent-module | parent-module | src/node_modules/parent-module/sub-module/main.js:1:1:2:0 | <toplevel> |
3843
| src/node_modules/parent-module/sub-module | parent-module/sub-module | src/node_modules/parent-module/sub-module/main.js:1:1:2:0 | <toplevel> |
@@ -41,17 +46,22 @@ npm
4146
| src/node_modules/third-party-module/package.json:1:1:5:1 | {\\n "na ... y.js"\\n} | third-party-module | 23.4.0 |
4247
| src/package.json:1:1:20:1 | {\\n "na ... "\\n }\\n} | test-package | 0.1.0 |
4348
getMainModule
49+
| src/node_modules/a/package.json:1:1:4:1 | {\\n " ... x.js"\\n} | a | src/node_modules/a/index.js:1:1:1:25 | <toplevel> |
4450
| src/node_modules/b/package.json:1:1:4:1 | {\\n "na ... "lib"\\n} | b | src/node_modules/b/lib/index.js:1:1:2:0 | <toplevel> |
4551
| src/node_modules/c/package.json:1:1:4:1 | {\\n "na ... src/"\\n} | c | src/node_modules/c/src/index.js:1:1:2:0 | <toplevel> |
4652
| src/node_modules/d/package.json:1:1:4:1 | {\\n "na ... main"\\n} | d | src/node_modules/d/main.js:1:1:2:0 | <toplevel> |
53+
| src/node_modules/nested/node_modules/a/package.json:1:1:5:1 | {\\n " ... ge A"\\n} | a | src/node_modules/nested/node_modules/a/index.js:1:1:1:25 | <toplevel> |
4754
| src/node_modules/parent-module/package.json:1:1:4:1 | {\\n "na ... n.js"\\n} | parent-module | src/node_modules/parent-module/main.js:1:1:2:0 | <toplevel> |
4855
| src/node_modules/parent-module/sub-module/package.json:1:1:3:1 | {\\n "ma ... n.js"\\n} | parent-module/sub-module | src/node_modules/parent-module/sub-module/main.js:1:1:2:0 | <toplevel> |
4956
| src/node_modules/third-party-module/package.json:1:1:5:1 | {\\n "na ... y.js"\\n} | third-party-module | src/node_modules/third-party-module/fancy.js:1:1:4:0 | <toplevel> |
5057
| src/package.json:1:1:20:1 | {\\n "na ... "\\n }\\n} | test-package | src/index.js:1:1:4:0 | <toplevel> |
5158
packageJson
59+
| src/node_modules/a/package.json:1:1:4:1 | {\\n " ... x.js"\\n} |
5260
| src/node_modules/b/package.json:1:1:4:1 | {\\n "na ... "lib"\\n} |
5361
| src/node_modules/c/package.json:1:1:4:1 | {\\n "na ... src/"\\n} |
5462
| src/node_modules/d/package.json:1:1:4:1 | {\\n "na ... main"\\n} |
63+
| src/node_modules/nested/node_modules/a/package.json:1:1:5:1 | {\\n " ... ge A"\\n} |
64+
| src/node_modules/nested/package.json:1:1:3:1 | {\\n " ... sted"\\n} |
5565
| src/node_modules/parent-module/package.json:1:1:4:1 | {\\n "na ... n.js"\\n} |
5666
| src/node_modules/parent-module/sub-module/package.json:1:1:3:1 | {\\n "ma ... n.js"\\n} |
5767
| src/node_modules/third-party-module/package.json:1:1:5:1 | {\\n "na ... y.js"\\n} |
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
| src/tst.js:2:1:2:16 | require('other') | Module other cannot be resolved, and is not declared as a dependency in $@. | src/package.json:1:1:15:1 | {\\n "na ... "\\n }\\n} | package.json |
2-
| src/tst.js:7:1:7:14 | require('mod') | Module mod cannot be resolved, and is not declared as a dependency in $@. | src/package.json:1:1:15:1 | {\\n "na ... "\\n }\\n} | package.json |
32
| src/tst.js:8:1:8:21 | require ... lared') | Module undeclared cannot be resolved, and is not declared as a dependency in $@. | src/package.json:1:1:15:1 | {\\n "na ... "\\n }\\n} | package.json |

javascript/ql/test/query-tests/NodeJS/UnresolvableImport/src/sub/node_modules/mod/package.json

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

javascript/ql/test/query-tests/NodeJS/UnresolvableImport/src/tst.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ require('foo'); // OK - declared as a dependency
44
require('bar/sub'); // OK - 'bar' declared as a dependency
55
require('./local'); // OK - local import
66
require('/global'); // OK - global import
7-
require('mod'); // $ Alert
7+
require('mod'); // $ MISSING: Alert // this is resolved due to the package.json file named "mod", but Node.js would not find it
88
require('undeclared'); // $ Alert
99
require('jade!./template.jade'); // OK - WebPack loader
1010
require('imports?$=jquery!./m.js'); // OK - WebPack shim
11-
require('react'); // OK - peer dependency
11+
require('react'); // OK - peer dependency

javascript/ql/test/query-tests/NodeJS/UnusedDependency/UnusedDependency.expected

+1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
| src/package.json:24:63:24:65 | "*" | Unused dependency 'not-really-used-in-install-script-because-of-substring'. |
44
| src/package.json:28:28:28:30 | "*" | Unused dependency 'used-in-test-script'. |
55
| src/package.json:29:30:29:32 | "*" | Unused dependency 'used-in-custom-script'. |
6+
| src/package.json:30:56:30:58 | "*" | Unused dependency 'used-in-require-with-exclamation-mark-separator'. |
67
| src/package.json:32:28:32:30 | "*" | Unused dependency 'used-in-mjs-require'. |
78
| src/package.json:36:48:36:50 | "*" | Unused dependency 'used-in-dynamic-template-require-string'. |

0 commit comments

Comments
 (0)