@@ -16,49 +16,42 @@ public class FilterFixture : BaseFixture
16
16
readonly Func < FilterSource , IEnumerable < string > , int > checkSuccess = ( source , attr ) => 0 ;
17
17
18
18
private const string FilterName = "the-filter" ;
19
- const string Attribute = "test" ;
19
+ readonly List < string > attributes = new List < string > { "test" } ;
20
20
21
21
[ Fact ]
22
22
public void CanRegisterFilterWithSingleAttribute ( )
23
23
{
24
- var filter = new EmptyFilter ( FilterName , Attribute ) ;
25
- Assert . Equal ( new List < string > { Attribute } , filter . Attributes ) ;
26
- }
27
-
28
- [ Fact ]
29
- public void CanRegisterFilterWithCommaSeparatedListOfAttributes ( )
30
- {
31
- var filter = new EmptyFilter ( FilterName , "one,two,three" ) ;
32
- Assert . Equal ( new List < string > { "one" , "two" , "three" } , filter . Attributes ) ;
24
+ var filter = new EmptyFilter ( FilterName , attributes ) ;
25
+ Assert . Equal ( attributes , filter . Attributes ) ;
33
26
}
34
27
35
28
[ Fact ]
36
29
public void CanRegisterAndUnregisterTheSameFilter ( )
37
30
{
38
- var filter = new EmptyFilter ( FilterName + 1 , Attribute ) ;
31
+ var filter = new EmptyFilter ( FilterName + 1 , attributes ) ;
39
32
40
33
GlobalSettings . RegisterFilter ( filter ) ;
41
- GlobalSettings . DeregisterFilter ( filter ) ;
34
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
42
35
43
36
GlobalSettings . RegisterFilter ( filter ) ;
44
- GlobalSettings . DeregisterFilter ( filter ) ;
37
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
45
38
}
46
39
47
40
[ Fact ]
48
41
public void CanRegisterAndDeregisterAfterGarbageCollection ( )
49
42
{
50
- var filter = new EmptyFilter ( FilterName + 2 , Attribute ) ;
43
+ var filter = new EmptyFilter ( FilterName + 2 , attributes ) ;
51
44
GlobalSettings . RegisterFilter ( filter ) ;
52
45
53
46
GC . Collect ( ) ;
54
47
55
- GlobalSettings . DeregisterFilter ( filter ) ;
48
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
56
49
}
57
50
58
51
[ Fact ]
59
52
public void SameFilterIsEqual ( )
60
53
{
61
- var filter = new EmptyFilter ( FilterName + 3 , Attribute ) ;
54
+ var filter = new EmptyFilter ( FilterName + 3 , attributes ) ;
62
55
Assert . Equal ( filter , filter ) ;
63
56
}
64
57
@@ -74,7 +67,7 @@ public void CheckCallbackNotMadeWhenFileStagedAndFilterNotRegistered()
74
67
75
68
string repoPath = InitNewRepository ( ) ;
76
69
77
- new FakeFilter ( FilterName + 4 , Attribute , callback ) ;
70
+ new FakeFilter ( FilterName + 4 , attributes , callback ) ;
78
71
79
72
using ( var repo = CreateTestRepository ( repoPath ) )
80
73
{
@@ -95,7 +88,7 @@ public void CheckCallbackMadeWhenFileStaged()
95
88
} ;
96
89
string repoPath = InitNewRepository ( ) ;
97
90
98
- var filter = new FakeFilter ( FilterName + 5 , Attribute , checkCallBack ) ;
91
+ var filter = new FakeFilter ( FilterName + 5 , attributes , checkCallBack ) ;
99
92
100
93
GlobalSettings . RegisterFilter ( filter ) ;
101
94
using ( var repo = CreateTestRepository ( repoPath ) )
@@ -104,7 +97,7 @@ public void CheckCallbackMadeWhenFileStaged()
104
97
Assert . True ( called ) ;
105
98
}
106
99
107
- GlobalSettings . DeregisterFilter ( filter ) ;
100
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
108
101
}
109
102
110
103
[ Fact ]
@@ -119,15 +112,15 @@ public void ApplyCallbackMadeWhenCheckCallbackReturnsZero()
119
112
} ;
120
113
121
114
string repoPath = InitNewRepository ( ) ;
122
- var filter = new FakeFilter ( FilterName + 6 , Attribute , checkSuccess , applyCallback ) ;
115
+ var filter = new FakeFilter ( FilterName + 6 , attributes , checkSuccess , applyCallback ) ;
123
116
124
117
GlobalSettings . RegisterFilter ( filter ) ;
125
118
using ( var repo = CreateTestRepository ( repoPath ) )
126
119
{
127
120
StageNewFile ( repo ) ;
128
121
}
129
122
130
- GlobalSettings . DeregisterFilter ( filter ) ;
123
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
131
124
132
125
Assert . True ( called ) ;
133
126
}
@@ -144,15 +137,15 @@ public void ApplyCallbackNotMadeWhenCheckCallbackReturnsPassThrough()
144
137
} ;
145
138
146
139
string repoPath = InitNewRepository ( ) ;
147
- var filter = new FakeFilter ( FilterName + 7 , Attribute , checkPassThrough , applyCallback ) ;
140
+ var filter = new FakeFilter ( FilterName + 7 , attributes , checkPassThrough , applyCallback ) ;
148
141
149
142
GlobalSettings . RegisterFilter ( filter ) ;
150
143
using ( var repo = CreateTestRepository ( repoPath ) )
151
144
{
152
145
StageNewFile ( repo ) ;
153
146
}
154
147
155
- GlobalSettings . DeregisterFilter ( filter ) ;
148
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
156
149
157
150
Assert . False ( called ) ;
158
151
}
@@ -167,7 +160,7 @@ public void InitCallbackNotMadeWhenFilterNeverUsed()
167
160
return 0 ;
168
161
} ;
169
162
170
- var filter = new FakeFilter ( FilterName + 11 , Attribute ,
163
+ var filter = new FakeFilter ( FilterName + 11 , attributes ,
171
164
checkSuccess ,
172
165
successCallback ,
173
166
successCallback ,
@@ -177,7 +170,7 @@ public void InitCallbackNotMadeWhenFilterNeverUsed()
177
170
178
171
Assert . False ( called ) ;
179
172
180
- GlobalSettings . DeregisterFilter ( filter ) ;
173
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
181
174
}
182
175
183
176
[ Fact ]
@@ -190,7 +183,7 @@ public void InitCallbackMadeWhenUsingTheFilter()
190
183
return 0 ;
191
184
} ;
192
185
193
- var filter = new FakeFilter ( FilterName + 12 , Attribute ,
186
+ var filter = new FakeFilter ( FilterName + 12 , attributes ,
194
187
checkSuccess ,
195
188
successCallback ,
196
189
successCallback ,
@@ -206,7 +199,7 @@ public void InitCallbackMadeWhenUsingTheFilter()
206
199
Assert . True ( called ) ;
207
200
}
208
201
209
- GlobalSettings . DeregisterFilter ( filter ) ;
202
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
210
203
}
211
204
212
205
[ Fact ]
@@ -225,7 +218,7 @@ public void WhenStagingFileCheckIsCalledWithCleanForCorrectPath()
225
218
return GitPassThrough ;
226
219
} ;
227
220
228
- var filter = new FakeFilter ( FilterName + 13 , Attribute , callback ) ;
221
+ var filter = new FakeFilter ( FilterName + 13 , attributes , callback ) ;
229
222
230
223
GlobalSettings . RegisterFilter ( filter ) ;
231
224
@@ -235,10 +228,10 @@ public void WhenStagingFileCheckIsCalledWithCleanForCorrectPath()
235
228
236
229
Assert . Equal ( FilterMode . Clean , calledWithMode ) ;
237
230
Assert . Equal ( expectedFile . Name , actualPath ) ;
238
- Assert . Equal ( new List < string > { Attribute } , actualAttributes ) ;
231
+ Assert . Equal ( attributes , actualAttributes ) ;
239
232
}
240
233
241
- GlobalSettings . DeregisterFilter ( filter ) ;
234
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
242
235
}
243
236
244
237
@@ -259,16 +252,16 @@ public void WhenCheckingOutAFileFileCheckIsCalledWithSmudgeForCorrectPath()
259
252
return GitPassThrough ;
260
253
} ;
261
254
262
- var filter = new FakeFilter ( FilterName + 14 , Attribute , callback ) ;
255
+ var filter = new FakeFilter ( FilterName + 14 , attributes , callback ) ;
263
256
264
257
GlobalSettings . RegisterFilter ( filter ) ;
265
258
266
259
FileInfo expectedFile = CheckoutFileForSmudge ( repoPath , branchName , "hello" ) ;
267
260
Assert . Equal ( FilterMode . Smudge , calledWithMode ) ;
268
261
Assert . Equal ( expectedFile . FullName , actualPath ) ;
269
- Assert . Equal ( new List < string > { Attribute } , actualAttributes ) ;
262
+ Assert . Equal ( attributes , actualAttributes ) ;
270
263
271
- GlobalSettings . DeregisterFilter ( filter ) ;
264
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
272
265
}
273
266
274
267
[ Fact ]
@@ -282,7 +275,7 @@ public void WhenStagingFileApplyIsCalledWithCleanForCorrectPath()
282
275
called = true ;
283
276
return GitPassThrough ;
284
277
} ;
285
- var filter = new FakeFilter ( FilterName + 15 , Attribute , checkSuccess , clean ) ;
278
+ var filter = new FakeFilter ( FilterName + 15 , attributes , checkSuccess , clean ) ;
286
279
287
280
GlobalSettings . RegisterFilter ( filter ) ;
288
281
@@ -292,7 +285,7 @@ public void WhenStagingFileApplyIsCalledWithCleanForCorrectPath()
292
285
Assert . True ( called ) ;
293
286
}
294
287
295
- GlobalSettings . DeregisterFilter ( filter ) ;
288
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
296
289
}
297
290
298
291
[ Fact ]
@@ -305,7 +298,7 @@ public void CleanFilterWritesOutputToObjectTree()
305
298
306
299
Func < Stream , Stream , int > cleanCallback = SubstitutionCipherFilter . RotateByThirteenPlaces ;
307
300
308
- var filter = new FakeFilter ( FilterName + 16 , Attribute , checkSuccess , cleanCallback ) ;
301
+ var filter = new FakeFilter ( FilterName + 16 , attributes , checkSuccess , cleanCallback ) ;
309
302
310
303
GlobalSettings . RegisterFilter ( filter ) ;
311
304
@@ -320,7 +313,7 @@ public void CleanFilterWritesOutputToObjectTree()
320
313
Assert . Equal ( encodedInput , textDetected ) ;
321
314
}
322
315
323
- GlobalSettings . DeregisterFilter ( filter ) ;
316
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
324
317
}
325
318
326
319
@@ -335,7 +328,7 @@ public void WhenCheckingOutAFileFileSmudgeWritesCorrectFileToWorkingDirectory()
335
328
336
329
Func < Stream , Stream , int > smudgeCallback = SubstitutionCipherFilter . RotateByThirteenPlaces ;
337
330
338
- var filter = new FakeFilter ( FilterName + 17 , Attribute , checkSuccess , null , smudgeCallback ) ;
331
+ var filter = new FakeFilter ( FilterName + 17 , attributes , checkSuccess , null , smudgeCallback ) ;
339
332
GlobalSettings . RegisterFilter ( filter ) ;
340
333
341
334
FileInfo expectedFile = CheckoutFileForSmudge ( repoPath , branchName , encodedInput ) ;
@@ -344,7 +337,7 @@ public void WhenCheckingOutAFileFileSmudgeWritesCorrectFileToWorkingDirectory()
344
337
string readAllText = File . ReadAllText ( combine ) ;
345
338
Assert . Equal ( decodedInput , readAllText ) ;
346
339
347
- GlobalSettings . DeregisterFilter ( filter ) ;
340
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
348
341
}
349
342
350
343
[ Fact ]
@@ -368,7 +361,7 @@ public void FilterStreamsAreCoherent()
368
361
return GitPassThrough ;
369
362
} ;
370
363
371
- var filter = new FakeFilter ( FilterName + 18 , Attribute , checkSuccess , assertor , assertor ) ;
364
+ var filter = new FakeFilter ( FilterName + 18 , attributes , checkSuccess , assertor , assertor ) ;
372
365
373
366
GlobalSettings . RegisterFilter ( filter ) ;
374
367
@@ -377,7 +370,7 @@ public void FilterStreamsAreCoherent()
377
370
StageNewFile ( repo ) ;
378
371
}
379
372
380
- GlobalSettings . DeregisterFilter ( filter ) ;
373
+ GlobalSettings . DeregisterFilter ( filter . Name ) ;
381
374
382
375
Assert . True ( inputCanRead . HasValue ) ;
383
376
Assert . True ( inputCanWrite . HasValue ) ;
@@ -440,7 +433,7 @@ private Repository CreateTestRepository(string path)
440
433
441
434
class EmptyFilter : Filter
442
435
{
443
- public EmptyFilter ( string name , string attributes )
436
+ public EmptyFilter ( string name , IEnumerable < string > attributes )
444
437
: base ( name , attributes )
445
438
{ }
446
439
}
@@ -452,7 +445,7 @@ class FakeFilter : Filter
452
445
private readonly Func < Stream , Stream , int > smudgeCallback ;
453
446
private readonly Func < int > initCallback ;
454
447
455
- public FakeFilter ( string name , string attributes ,
448
+ public FakeFilter ( string name , IEnumerable < string > attributes ,
456
449
Func < FilterSource , IEnumerable < string > , int > checkCallBack = null ,
457
450
Func < Stream , Stream , int > cleanCallback = null ,
458
451
Func < Stream , Stream , int > smudgeCallback = null ,
0 commit comments