11"use strict" ;
22
33let { generateFingerprint } = require ( "../lib/util" ) ;
4- let { FileFinder } = require ( "../lib/util/files/finder" ) ;
54let { describe, it } = require ( "node:test" ) ;
6- let path = require ( "path" ) ;
75let assert = require ( "assert" ) ;
86
97let assertSame = assert . strictEqual ;
10- let assertDeep = assert . deepStrictEqual ;
11-
12- let FIXTURES_PATH = path . resolve ( __dirname , "fixtures" ) ;
138
149describe ( "fingerprinting" , ( ) => {
1510 it ( "generates a content-dependent hash" , ( ) => {
@@ -25,113 +20,3 @@ describe("fingerprinting", () => {
2520 assertSame ( fingerprint , "/path/to/baz-8047cfaac755e5c7f77af066123980a5" ) ;
2621 } ) ;
2722} ) ;
28-
29- describe ( "FileFinder" , ( ) => {
30- it ( "finds all files within a folder" , ( ) => {
31- let fileFinder = new FileFinder ( FIXTURES_PATH ) ;
32-
33- return fileFinder . all ( ) .
34- then ( allFiles => {
35- assertDeep ( allFiles , [
36- "dud.js" ,
37- "dummy/.keep" ,
38- "dummy/index.js" ,
39- "dummy/src.js" ,
40- "node_modules/dummy/images/.keep" ,
41- "node_modules/dummy/index.js" ,
42- "node_modules/dummy/pkg.js" ,
43- "node_modules/faucet-pipeline-dummy/index.js" ,
44- "node_modules/faucet-pipeline-invalid-a/index.js" ,
45- "node_modules/faucet-pipeline-invalid-b/index.js" ,
46- "node_modules/faucet-pipeline-invalid-c/index.js" ,
47- "node_modules/faucet-pipeline-js/index.js" ,
48- "node_modules/faucet-pipeline-sass/index.js" ,
49- "node_modules/faucet-pipeline-static/index.js"
50- ] ) ;
51- } ) ;
52- } ) ;
53-
54- it ( "finds all files within a folder without dotfiles" , ( ) => {
55- let fileFinder = new FileFinder ( FIXTURES_PATH , { skipDotfiles : true } ) ;
56-
57- return fileFinder . all ( ) .
58- then ( allFiles => {
59- assertDeep ( allFiles , [
60- "dud.js" ,
61- "dummy/index.js" ,
62- "dummy/src.js" ,
63- "node_modules/dummy/index.js" ,
64- "node_modules/dummy/pkg.js" ,
65- "node_modules/faucet-pipeline-dummy/index.js" ,
66- "node_modules/faucet-pipeline-invalid-a/index.js" ,
67- "node_modules/faucet-pipeline-invalid-b/index.js" ,
68- "node_modules/faucet-pipeline-invalid-c/index.js" ,
69- "node_modules/faucet-pipeline-js/index.js" ,
70- "node_modules/faucet-pipeline-sass/index.js" ,
71- "node_modules/faucet-pipeline-static/index.js"
72- ] ) ;
73- } ) ;
74- } ) ;
75-
76- it ( "finds all files within a folder with a filter" , ( ) => {
77- let fileFinder = new FileFinder ( FIXTURES_PATH , {
78- filter : filename => path . basename ( filename ) === "index.js"
79- } ) ;
80-
81- return fileFinder . all ( ) .
82- then ( allFiles => {
83- assertDeep ( allFiles , [
84- "dummy/index.js" ,
85- "node_modules/dummy/index.js" ,
86- "node_modules/faucet-pipeline-dummy/index.js" ,
87- "node_modules/faucet-pipeline-invalid-a/index.js" ,
88- "node_modules/faucet-pipeline-invalid-b/index.js" ,
89- "node_modules/faucet-pipeline-invalid-c/index.js" ,
90- "node_modules/faucet-pipeline-js/index.js" ,
91- "node_modules/faucet-pipeline-sass/index.js" ,
92- "node_modules/faucet-pipeline-static/index.js"
93- ] ) ;
94- } ) ;
95- } ) ;
96-
97- it ( "matches given files" , ( ) => {
98- let fileFinder = new FileFinder ( FIXTURES_PATH ) ;
99- let foo = [
100- path . resolve ( FIXTURES_PATH , "dummy/index.js" ) ,
101- path . resolve ( FIXTURES_PATH , "something.js" ) ,
102- path . resolve ( FIXTURES_PATH , "../other/something.js" )
103- ] ;
104-
105- fileFinder . match ( foo ) .
106- then ( allFiles => {
107- assertDeep ( allFiles , [ "dummy/index.js" , "something.js" ] ) ;
108- } ) ;
109- } ) ;
110-
111- it ( "matches given files without dotfiles" , ( ) => {
112- let fileFinder = new FileFinder ( FIXTURES_PATH , { skipDotfiles : true } ) ;
113- let foo = [
114- path . resolve ( FIXTURES_PATH , ".secret" )
115- ] ;
116-
117- return fileFinder . match ( foo ) .
118- then ( allFiles => {
119- assertDeep ( allFiles , [ ] ) ;
120- } ) ;
121- } ) ;
122-
123- it ( "matches given files with custom finder" , ( ) => {
124- let fileFinder = new FileFinder ( FIXTURES_PATH , {
125- filter : filename => path . basename ( filename ) === "index.js"
126- } ) ;
127- let foo = [
128- path . resolve ( FIXTURES_PATH , "index.js" ) ,
129- path . resolve ( FIXTURES_PATH , "something.js" )
130- ] ;
131-
132- fileFinder . match ( foo ) .
133- then ( allFiles => {
134- assertDeep ( allFiles , [ "index.js" ] ) ;
135- } ) ;
136- } ) ;
137- } ) ;
0 commit comments