@@ -45,24 +45,25 @@ func TestReadDirRecursive(t *testing.T) {
45
45
46
46
list , err := testPath .ReadDirRecursive ()
47
47
require .NoError (t , err )
48
- require .Len (t , list , 16 )
49
-
50
- pathEqualsTo (t , "testdata/fileset/anotherFile" , list [0 ])
51
- pathEqualsTo (t , "testdata/fileset/file" , list [1 ])
52
- pathEqualsTo (t , "testdata/fileset/folder" , list [2 ])
53
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , list [3 ])
54
- pathEqualsTo (t , "testdata/fileset/folder/file2" , list [4 ])
55
- pathEqualsTo (t , "testdata/fileset/folder/file3" , list [5 ])
56
- pathEqualsTo (t , "testdata/fileset/folder/subfolder" , list [6 ])
57
- pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , list [7 ])
58
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , list [8 ])
59
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , list [9 ])
60
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , list [10 ])
61
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , list [11 ])
62
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , list [12 ])
63
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , list [13 ])
64
- pathEqualsTo (t , "testdata/fileset/test.txt" , list [14 ])
65
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , list [15 ])
48
+ require .Len (t , list , 17 )
49
+
50
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , list [0 ])
51
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , list [1 ])
52
+ pathEqualsTo (t , "testdata/fileset/file" , list [2 ])
53
+ pathEqualsTo (t , "testdata/fileset/folder" , list [3 ])
54
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , list [4 ])
55
+ pathEqualsTo (t , "testdata/fileset/folder/file2" , list [5 ])
56
+ pathEqualsTo (t , "testdata/fileset/folder/file3" , list [6 ])
57
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder" , list [7 ])
58
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , list [8 ])
59
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , list [9 ])
60
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , list [10 ])
61
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , list [11 ])
62
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , list [12 ])
63
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , list [13 ])
64
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , list [14 ])
65
+ pathEqualsTo (t , "testdata/fileset/test.txt" , list [15 ])
66
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , list [16 ])
66
67
}
67
68
68
69
func TestReadDirRecursiveSymLinkLoop (t * testing.T ) {
@@ -113,120 +114,128 @@ func TestReadDirRecursiveFiltered(t *testing.T) {
113
114
l , err := testdata .ReadDirRecursiveFiltered (nil )
114
115
require .NoError (t , err )
115
116
l .Sort ()
116
- require .Len (t , l , 16 )
117
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
118
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
119
- pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
120
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [3 ])
121
- pathEqualsTo (t , "testdata/fileset/folder/file2" , l [4 ])
122
- pathEqualsTo (t , "testdata/fileset/folder/file3" , l [5 ])
123
- pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [6 ])
124
- pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , l [7 ])
125
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [8 ])
126
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [9 ])
127
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [10 ])
128
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [11 ])
129
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [12 ])
130
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [13 ])
131
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [14 ])
132
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [15 ])
117
+ require .Len (t , l , 17 )
118
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
119
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
120
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
121
+ pathEqualsTo (t , "testdata/fileset/folder" , l [3 ])
122
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [4 ])
123
+ pathEqualsTo (t , "testdata/fileset/folder/file2" , l [5 ])
124
+ pathEqualsTo (t , "testdata/fileset/folder/file3" , l [6 ])
125
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [7 ])
126
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , l [8 ])
127
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [9 ])
128
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [10 ])
129
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [11 ])
130
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [12 ])
131
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [13 ])
132
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [14 ])
133
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [15 ])
134
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [16 ])
133
135
134
136
l , err = testdata .ReadDirRecursiveFiltered (FilterOutDirectories ())
135
137
require .NoError (t , err )
136
138
l .Sort ()
137
- require .Len (t , l , 6 )
138
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
139
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
140
- pathEqualsTo (t , "testdata/fileset/folder" , l [2 ]) // <- this is listed but not traversed
141
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [3 ]) // <- this is listed but not traversed
142
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [4 ])
143
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [5 ])
139
+ require .Len (t , l , 7 )
140
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
141
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
142
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
143
+ pathEqualsTo (t , "testdata/fileset/folder" , l [3 ]) // <- this is listed but not traversed
144
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [4 ]) // <- this is listed but not traversed
145
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [5 ])
146
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [6 ])
144
147
145
148
l , err = testdata .ReadDirRecursiveFiltered (nil , FilterOutDirectories ())
146
149
require .NoError (t , err )
147
150
l .Sort ()
148
- require .Len (t , l , 12 )
149
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
150
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
151
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [2 ])
152
- pathEqualsTo (t , "testdata/fileset/folder/file2" , l [3 ])
153
- pathEqualsTo (t , "testdata/fileset/folder/file3" , l [4 ])
154
- pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , l [5 ])
155
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [6 ])
156
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [7 ])
157
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [8 ])
158
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [9 ])
159
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [10 ])
160
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [11 ])
151
+ require .Len (t , l , 13 )
152
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
153
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
154
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
155
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [3 ])
156
+ pathEqualsTo (t , "testdata/fileset/folder/file2" , l [4 ])
157
+ pathEqualsTo (t , "testdata/fileset/folder/file3" , l [5 ])
158
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder/file4" , l [6 ])
159
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [7 ])
160
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [8 ])
161
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [9 ])
162
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [10 ])
163
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [11 ])
164
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [12 ])
161
165
162
166
l , err = testdata .ReadDirRecursiveFiltered (FilterOutDirectories (), FilterOutDirectories ())
163
167
require .NoError (t , err )
164
168
l .Sort ()
165
- require .Len (t , l , 4 )
166
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
167
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
168
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [2 ])
169
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [3 ])
169
+ require .Len (t , l , 5 )
170
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
171
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
172
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
173
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [3 ])
174
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [4 ])
170
175
171
176
l , err = testdata .ReadDirRecursiveFiltered (FilterOutPrefixes ("sub" ), FilterOutSuffixes ("3" ))
172
177
require .NoError (t , err )
173
178
l .Sort ()
174
- require .Len (t , l , 12 )
175
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
176
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
177
- pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
178
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [3 ])
179
- pathEqualsTo (t , "testdata/fileset/folder/file2" , l [4 ])
180
- pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [5 ]) // <- subfolder skipped by Prefix("sub")
181
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [6 ])
182
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [7 ])
183
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [8 ])
184
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [9 ]) // <- subfolder skipped by Prefix("sub")
185
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [10 ])
186
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [11 ])
179
+ require .Len (t , l , 13 )
180
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
181
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
182
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
183
+ pathEqualsTo (t , "testdata/fileset/folder" , l [3 ])
184
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [4 ])
185
+ pathEqualsTo (t , "testdata/fileset/folder/file2" , l [5 ])
186
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [6 ]) // <- subfolder skipped by Prefix("sub")
187
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [7 ])
188
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [8 ])
189
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [9 ])
190
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [10 ]) // <- subfolder skipped by Prefix("sub")
191
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [11 ])
192
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [12 ])
187
193
188
194
l , err = testdata .ReadDirRecursiveFiltered (FilterOutPrefixes ("sub" ), AndFilter (FilterOutSuffixes ("3" ), FilterOutPrefixes ("fil" )))
189
195
require .NoError (t , err )
190
196
l .Sort ()
191
- require .Len (t , l , 9 )
192
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
193
- pathEqualsTo (t , "testdata/fileset/folder" , l [1 ])
194
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [2 ])
195
- pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [3 ])
196
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [4 ])
197
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [5 ])
198
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [6 ])
199
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [7 ])
200
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [8 ])
197
+ require .Len (t , l , 10 )
198
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
199
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
200
+ pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
201
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [3 ])
202
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [4 ])
203
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [5 ])
204
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [6 ])
205
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [7 ])
206
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [8 ])
207
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [9 ])
201
208
202
209
l , err = testdata .ReadDirRecursiveFiltered (FilterOutPrefixes ("sub" ), AndFilter (FilterOutSuffixes ("3" ), FilterOutPrefixes ("fil" ), FilterOutSuffixes (".gz" )))
203
210
require .NoError (t , err )
204
211
l .Sort ()
205
- require .Len (t , l , 8 )
206
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
207
- pathEqualsTo (t , "testdata/fileset/folder" , l [1 ])
208
- pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [2 ])
209
- pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [3 ])
210
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [4 ])
211
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [5 ])
212
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [6 ])
213
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [7 ])
212
+ require .Len (t , l , 9 )
213
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
214
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
215
+ pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
216
+ pathEqualsTo (t , "testdata/fileset/folder/.hidden" , l [3 ])
217
+ pathEqualsTo (t , "testdata/fileset/folder/subfolder" , l [4 ])
218
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [5 ])
219
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [6 ])
220
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [7 ])
221
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [8 ])
214
222
215
223
l , err = testdata .ReadDirRecursiveFiltered (OrFilter (FilterPrefixes ("sub" ), FilterSuffixes ("tofolder" )))
216
224
require .NoError (t , err )
217
225
l .Sort ()
218
- require .Len (t , l , 11 )
219
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
220
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
221
- pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
222
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [3 ])
223
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [4 ])
224
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [5 ])
225
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [6 ])
226
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [7 ])
227
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [8 ])
228
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [9 ])
229
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [10 ])
226
+ require .Len (t , l , 12 )
227
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
228
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
229
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
230
+ pathEqualsTo (t , "testdata/fileset/folder" , l [3 ])
231
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [4 ])
232
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/.hidden" , l [5 ])
233
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [6 ])
234
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [7 ])
235
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [8 ])
236
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder/file4" , l [9 ])
237
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [10 ])
238
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [11 ])
230
239
231
240
l , err = testdata .ReadDirRecursiveFiltered (nil , FilterNames ("folder" ))
232
241
require .NoError (t , err )
@@ -236,17 +245,18 @@ func TestReadDirRecursiveFiltered(t *testing.T) {
236
245
237
246
l , err = testdata .ReadDirRecursiveFiltered (FilterNames ("symlinktofolder" ), FilterOutNames (".hidden" ))
238
247
require .NoError (t , err )
239
- require .Len (t , l , 9 )
248
+ require .Len (t , l , 10 )
240
249
l .Sort ()
241
- pathEqualsTo (t , "testdata/fileset/anotherFile" , l [0 ])
242
- pathEqualsTo (t , "testdata/fileset/file" , l [1 ])
243
- pathEqualsTo (t , "testdata/fileset/folder" , l [2 ])
244
- pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [3 ])
245
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [4 ])
246
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [5 ])
247
- pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [6 ])
248
- pathEqualsTo (t , "testdata/fileset/test.txt" , l [7 ])
249
- pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [8 ])
250
+ pathEqualsTo (t , "testdata/fileset/.gitattributes" , l [0 ])
251
+ pathEqualsTo (t , "testdata/fileset/anotherFile" , l [1 ])
252
+ pathEqualsTo (t , "testdata/fileset/file" , l [2 ])
253
+ pathEqualsTo (t , "testdata/fileset/folder" , l [3 ])
254
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder" , l [4 ])
255
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file2" , l [5 ])
256
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/file3" , l [6 ])
257
+ pathEqualsTo (t , "testdata/fileset/symlinktofolder/subfolder" , l [7 ])
258
+ pathEqualsTo (t , "testdata/fileset/test.txt" , l [8 ])
259
+ pathEqualsTo (t , "testdata/fileset/test.txt.gz" , l [9 ])
250
260
}
251
261
252
262
func TestReadDirRecursiveLoopDetection (t * testing.T ) {
0 commit comments