@@ -7,11 +7,13 @@ import { getTestFrameworkName } from "../src/utils";
77
88describe ( "getTestFrameworkName()" , ( ) => {
99 it ( "Should return N/A" , ( ) => {
10- assert . equal ( getTestFrameworkName ( { test : "2.0.0" , test2 : "3.0.0" } ) , "N/A" ) ;
10+ assert . equal ( getTestFrameworkName ( { name : "test" , version : "1.0.0" , test : "2.0.0" , test2 : "3.0.0" } ) , "N/A" ) ;
1111 } ) ;
1212
1313 it ( "Should return ava" , ( ) => {
1414 const packageJson = {
15+ name : "test" ,
16+ version : "1.0.0" ,
1517 devDependencies : {
1618 ava : "^2.0.0"
1719 }
@@ -21,6 +23,8 @@ describe("getTestFrameworkName()", () => {
2123
2224 it ( "Should return jest" , ( ) => {
2325 const packageJson = {
26+ name : "test" ,
27+ version : "1.0.0" ,
2428 devDependencies : {
2529 jest : "^2.0.0"
2630 }
@@ -30,15 +34,19 @@ describe("getTestFrameworkName()", () => {
3034
3135 it ( "Should return japa" , ( ) => {
3236 const packageJson = {
37+ name : "test" ,
38+ version : "1.0.0" ,
3339 devDependencies : {
34- japa : "^2.0.0"
40+ "@ japa/runner" : "^2.0.0"
3541 }
3642 } ;
3743 assert . equal ( getTestFrameworkName ( packageJson ) , "japa" ) ;
3844 } ) ;
3945
4046 it ( "Should return tape" , ( ) => {
4147 const packageJson = {
48+ name : "test" ,
49+ version : "1.0.0" ,
4250 devDependencies : {
4351 tape : "^2.0.0"
4452 }
@@ -48,6 +56,8 @@ describe("getTestFrameworkName()", () => {
4856
4957 it ( "Should return mocha" , ( ) => {
5058 const packageJson = {
59+ name : "test" ,
60+ version : "1.0.0" ,
5161 devDependencies : {
5262 mocha : "^2.0.0"
5363 }
@@ -56,12 +66,52 @@ describe("getTestFrameworkName()", () => {
5666 assert . equal ( getTestFrameworkName ( packageJson ) , "mocha" ) ;
5767 } ) ;
5868
59- it ( "Should return node:test" , ( ) => {
60- const packageJson = {
61- scripts : {
62- test : "node --test"
63- }
64- } ;
65- assert . equal ( getTestFrameworkName ( packageJson ) , "node:test" ) ;
69+ describe ( "node:test" , ( ) => {
70+ it ( "Should return node:test for test script" , ( ) => {
71+ const packageJson = {
72+ name : "test" ,
73+ version : "1.0.0" ,
74+ scripts : {
75+ test : "node --test"
76+ }
77+ } ;
78+ assert . equal ( getTestFrameworkName ( packageJson ) , "node:test" ) ;
79+ } ) ;
80+
81+ it ( "Should return node:test when a nested script uses node --test" , ( ) => {
82+ const packageJson = {
83+ name : "test" ,
84+ version : "1.0.0" ,
85+ scripts : {
86+ test : "c8 --all --src ./src -r html npm run test-only" ,
87+ "test-only" : "glob -c \"node --loader=esmock --no-warnings --test-concurrency 1 --test\" \"test/**/*.test.js\""
88+ }
89+ } ;
90+ assert . equal ( getTestFrameworkName ( packageJson ) , "node:test" ) ;
91+ } ) ;
92+
93+ it ( "Should return node:test when a nested script uses node --test, recursively" , ( ) => {
94+ const packageJson = {
95+ name : "test" ,
96+ version : "1.0.0" ,
97+ scripts : {
98+ test : "npm run foo" ,
99+ foo : "npm run bar" ,
100+ bar : "node --test"
101+ }
102+ } ;
103+ assert . equal ( getTestFrameworkName ( packageJson ) , "node:test" ) ;
104+ } ) ;
105+
106+ it ( "Should return node:test for test script when using tsx" , ( ) => {
107+ const packageJson = {
108+ name : "test" ,
109+ version : "1.0.0" ,
110+ scripts : {
111+ test : "tsx --test"
112+ }
113+ } ;
114+ assert . equal ( getTestFrameworkName ( packageJson ) , "node:test" ) ;
115+ } ) ;
66116 } ) ;
67117} ) ;
0 commit comments