5
5
using FluentAssertions ;
6
6
using GitHub . Unity ;
7
7
using NCrunch . Framework ;
8
+ using NSubstitute ;
8
9
using NUnit . Framework ;
9
10
using TestUtils ;
11
+ using UnityEngine ;
10
12
11
13
namespace UnitTests . UI
12
14
{
13
15
14
16
[ TestFixture , Isolated ]
15
17
public class TreeBuilderTests
16
18
{
19
+ private ILogging logger = Logging . GetLogger < TreeBuilderTests > ( ) ;
20
+
17
21
private IEnvironment environment ;
18
22
private GitObjectFactory gitObjectFactory ;
19
23
@@ -30,10 +34,10 @@ public void CanBuildTreeForSingleItem()
30
34
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
31
35
var foldedTreeEntries = new List < string > ( ) ;
32
36
33
- Action < FileTreeNode > stateChangeCallback = node => { } ;
37
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
34
38
35
39
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
36
- foldedTreeEntries , stateChangeCallback ) ;
40
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
37
41
38
42
var children = treeRoot . Children . ToArray ( ) ;
39
43
children . Length . Should ( ) . Be ( 1 ) ;
@@ -45,7 +49,6 @@ public void CanBuildTreeForSingleItem()
45
49
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
46
50
children [ 0 ] . RepositoryPath . Should ( ) . Be ( "file1.txt" ) ;
47
51
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
48
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
49
52
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
50
53
51
54
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -64,10 +67,10 @@ public void CanBuildTreeForSingleItemWhenProjectNestedInRepo()
64
67
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
65
68
var foldedTreeEntries = new List < string > ( ) ;
66
69
67
- Action < FileTreeNode > stateChangeCallback = node => { } ;
70
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
68
71
69
72
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
70
- foldedTreeEntries , stateChangeCallback ) ;
73
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
71
74
72
75
var children = treeRoot . Children . ToArray ( ) ;
73
76
children . Length . Should ( ) . Be ( 1 ) ;
@@ -79,7 +82,6 @@ public void CanBuildTreeForSingleItemWhenProjectNestedInRepo()
79
82
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
80
83
children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"Project\file1.txt" ) ;
81
84
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
82
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
83
85
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
84
86
85
87
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -98,10 +100,10 @@ public void CanBuildTreeForSingleItemInFolder()
98
100
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
99
101
var foldedTreeEntries = new List < string > ( ) ;
100
102
101
- Action < FileTreeNode > stateChangeCallback = node => { } ;
103
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
102
104
103
105
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
104
- foldedTreeEntries , stateChangeCallback ) ;
106
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
105
107
106
108
var children = treeRoot . Children . ToArray ( ) ;
107
109
children . Length . Should ( ) . Be ( 1 ) ;
@@ -113,7 +115,6 @@ public void CanBuildTreeForSingleItemInFolder()
113
115
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
114
116
children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"folder\file1.txt" ) ;
115
117
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
116
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
117
118
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
118
119
119
120
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -132,10 +133,10 @@ public void CanBuildTreeForSingleItemInFolderWhenProjectNestedInRepo()
132
133
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
133
134
var foldedTreeEntries = new List < string > ( ) ;
134
135
135
- Action < FileTreeNode > stateChangeCallback = node => { } ;
136
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
136
137
137
138
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
138
- foldedTreeEntries , stateChangeCallback ) ;
139
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
139
140
140
141
var children = treeRoot . Children . ToArray ( ) ;
141
142
children . Length . Should ( ) . Be ( 1 ) ;
@@ -147,7 +148,6 @@ public void CanBuildTreeForSingleItemInFolderWhenProjectNestedInRepo()
147
148
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
148
149
children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"Project\folder\file1.txt" ) ;
149
150
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
150
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
151
151
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
152
152
153
153
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -167,10 +167,10 @@ public void CanBuildTreeForMultipleSiblings()
167
167
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
168
168
var foldedTreeEntries = new List < string > ( ) ;
169
169
170
- Action < FileTreeNode > stateChangeCallback = node => { } ;
170
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
171
171
172
172
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
173
- foldedTreeEntries , stateChangeCallback ) ;
173
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
174
174
175
175
var children = treeRoot . Children . ToArray ( ) ;
176
176
children . Length . Should ( ) . Be ( 2 ) ;
@@ -182,7 +182,6 @@ public void CanBuildTreeForMultipleSiblings()
182
182
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
183
183
children [ 0 ] . RepositoryPath . Should ( ) . Be ( "file1.txt" ) ;
184
184
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
185
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
186
185
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
187
186
188
187
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -192,7 +191,6 @@ public void CanBuildTreeForMultipleSiblings()
192
191
children [ 1 ] . Path . Should ( ) . Be ( "file2.txt" ) ;
193
192
children [ 1 ] . RepositoryPath . Should ( ) . Be ( "file2.txt" ) ;
194
193
children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
195
- children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
196
194
children [ 1 ] . Target . Should ( ) . Be ( gitCommitTargets [ 1 ] ) ;
197
195
198
196
children [ 1 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -212,10 +210,10 @@ public void CanBuildTreeForMultipleSiblingsWhenProjectNestedInRepo()
212
210
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
213
211
var foldedTreeEntries = new List < string > ( ) ;
214
212
215
- Action < FileTreeNode > stateChangeCallback = node => { } ;
213
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
216
214
217
215
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
218
- foldedTreeEntries , stateChangeCallback ) ;
216
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
219
217
220
218
var children = treeRoot . Children . ToArray ( ) ;
221
219
children . Length . Should ( ) . Be ( 2 ) ;
@@ -227,7 +225,6 @@ public void CanBuildTreeForMultipleSiblingsWhenProjectNestedInRepo()
227
225
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
228
226
children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"Project\file1.txt" ) ;
229
227
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
230
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
231
228
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
232
229
233
230
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -237,7 +234,6 @@ public void CanBuildTreeForMultipleSiblingsWhenProjectNestedInRepo()
237
234
children [ 1 ] . Path . Should ( ) . Be ( "file2.txt" ) ;
238
235
children [ 1 ] . RepositoryPath . Should ( ) . Be ( @"Project\file2.txt" ) ;
239
236
children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
240
- children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
241
237
children [ 1 ] . Target . Should ( ) . Be ( gitCommitTargets [ 1 ] ) ;
242
238
243
239
children [ 1 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -260,10 +256,10 @@ public void CanBuildTreeForHierarchy()
260
256
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
261
257
var foldedTreeEntries = new List < string > ( ) ;
262
258
263
- Action < FileTreeNode > stateChangeCallback = node => { } ;
259
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
264
260
265
261
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
266
- foldedTreeEntries , stateChangeCallback ) ;
262
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
267
263
268
264
var children = treeRoot . Children . ToArray ( ) ;
269
265
children . Length . Should ( ) . Be ( 3 ) ;
@@ -275,7 +271,6 @@ public void CanBuildTreeForHierarchy()
275
271
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
276
272
children [ 0 ] . RepositoryPath . Should ( ) . Be ( "file1.txt" ) ;
277
273
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
278
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
279
274
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
280
275
281
276
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -285,15 +280,13 @@ public void CanBuildTreeForHierarchy()
285
280
children [ 1 ] . Path . Should ( ) . Be ( "folder1" ) ;
286
281
children [ 1 ] . RepositoryPath . Should ( ) . Be ( "folder1" ) ;
287
282
children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
288
- children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
289
283
children [ 1 ] . Target . Should ( ) . BeNull ( ) ;
290
284
291
285
children [ 2 ] . Label . Should ( ) . Be ( "folder2" ) ;
292
286
children [ 2 ] . Open . Should ( ) . BeTrue ( ) ;
293
287
children [ 2 ] . Path . Should ( ) . Be ( "folder2" ) ;
294
288
children [ 2 ] . RepositoryPath . Should ( ) . Be ( "folder2" ) ;
295
289
children [ 2 ] . State . Should ( ) . Be ( CommitState . None ) ;
296
- children [ 2 ] . State . Should ( ) . Be ( CommitState . None ) ;
297
290
children [ 2 ] . Target . Should ( ) . BeNull ( ) ;
298
291
299
292
var folder1Children = children [ 1 ] . Children . ToArray ( ) ;
@@ -304,7 +297,6 @@ public void CanBuildTreeForHierarchy()
304
297
folder1Children [ 0 ] . Path . Should ( ) . Be ( @"folder1\file2.txt" ) ;
305
298
folder1Children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"folder1\file2.txt" ) ;
306
299
folder1Children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
307
- folder1Children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
308
300
folder1Children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 1 ] ) ;
309
301
310
302
folder1Children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -314,7 +306,6 @@ public void CanBuildTreeForHierarchy()
314
306
folder1Children [ 1 ] . Path . Should ( ) . Be ( @"folder1\file3.txt" ) ;
315
307
folder1Children [ 1 ] . RepositoryPath . Should ( ) . Be ( @"folder1\file3.txt" ) ;
316
308
folder1Children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
317
- folder1Children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
318
309
folder1Children [ 1 ] . Target . Should ( ) . Be ( gitCommitTargets [ 2 ] ) ;
319
310
320
311
folder1Children [ 1 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -327,7 +318,6 @@ public void CanBuildTreeForHierarchy()
327
318
folder2Children [ 0 ] . Path . Should ( ) . Be ( @"folder2\file4.txt" ) ;
328
319
folder2Children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"folder2\file4.txt" ) ;
329
320
folder2Children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
330
- folder2Children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
331
321
folder2Children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 3 ] ) ;
332
322
333
323
folder2Children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -337,7 +327,6 @@ public void CanBuildTreeForHierarchy()
337
327
folder2Children [ 1 ] . Path . Should ( ) . Be ( @"folder2\file5.txt" ) ;
338
328
folder2Children [ 1 ] . RepositoryPath . Should ( ) . Be ( @"folder2\file5.txt" ) ;
339
329
folder2Children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
340
- folder2Children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
341
330
folder2Children [ 1 ] . Target . Should ( ) . Be ( gitCommitTargets [ 4 ] ) ;
342
331
343
332
folder2Children [ 1 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -357,10 +346,10 @@ public void CanBuildTreeForHierarchyWhenProjectNestedInRepo()
357
346
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
358
347
var foldedTreeEntries = new List < string > ( ) ;
359
348
360
- Action < FileTreeNode > stateChangeCallback = node => { } ;
349
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
361
350
362
351
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
363
- foldedTreeEntries , stateChangeCallback ) ;
352
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
364
353
365
354
var children = treeRoot . Children . ToArray ( ) ;
366
355
children . Length . Should ( ) . Be ( 2 ) ;
@@ -372,7 +361,6 @@ public void CanBuildTreeForHierarchyWhenProjectNestedInRepo()
372
361
children [ 0 ] . RepositoryPath . Should ( ) . Be ( @"Project\file1.txt" ) ;
373
362
children [ 0 ] . Open . Should ( ) . BeTrue ( ) ;
374
363
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
375
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
376
364
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
377
365
378
366
children [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -382,7 +370,6 @@ public void CanBuildTreeForHierarchyWhenProjectNestedInRepo()
382
370
children [ 1 ] . RepositoryPath . Should ( ) . Be ( @"Project\folder" ) ;
383
371
children [ 1 ] . Open . Should ( ) . BeTrue ( ) ;
384
372
children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
385
- children [ 1 ] . State . Should ( ) . Be ( CommitState . None ) ;
386
373
children [ 1 ] . Target . Should ( ) . BeNull ( ) ;
387
374
388
375
var folderChildren = children [ 1 ] . Children . ToArray ( ) ;
@@ -393,7 +380,6 @@ public void CanBuildTreeForHierarchyWhenProjectNestedInRepo()
393
380
folderChildren [ 0 ] . Path . Should ( ) . Be ( @"folder\file2.txt" ) ;
394
381
folderChildren [ 0 ] . RepositoryPath . Should ( ) . Be ( @"Project\folder\file2.txt" ) ;
395
382
folderChildren [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
396
- folderChildren [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
397
383
folderChildren [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 1 ] ) ;
398
384
399
385
folderChildren [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
@@ -413,10 +399,10 @@ public void CanBuildTreeForItemAndMetafile()
413
399
var gitCommitTargets = new List < GitCommitTarget > ( ) ;
414
400
var foldedTreeEntries = new List < string > ( ) ;
415
401
416
- Action < FileTreeNode > stateChangeCallback = node => { } ;
402
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
417
403
418
404
var treeRoot = TreeBuilder . BuildTreeRoot ( newGitStatusEntries , gitStatusEntries , gitCommitTargets ,
419
- foldedTreeEntries , stateChangeCallback ) ;
405
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
420
406
421
407
var children = treeRoot . Children . ToArray ( ) ;
422
408
children . Length . Should ( ) . Be ( 1 ) ;
@@ -428,7 +414,6 @@ public void CanBuildTreeForItemAndMetafile()
428
414
children [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
429
415
children [ 0 ] . RepositoryPath . Should ( ) . Be ( "file1.txt" ) ;
430
416
children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
431
- children [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
432
417
children [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
433
418
434
419
var fileChildren = children [ 0 ] . Children . ToArray ( ) ;
@@ -448,6 +433,49 @@ public void CanBuildTreeForItemAndMetafile()
448
433
fileChildren [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
449
434
}
450
435
436
+ [ Test ]
437
+ public void CanUpdateTreeForSingleItem ( )
438
+ {
439
+ InitializeEnvironment ( @"c:\Project" , @"c:\Project" ) ;
440
+
441
+ var gitStatusEntriesGen0 = new List < GitStatusEntry > ( ) ;
442
+
443
+ var gitStatusEntriesGen1 = new List < GitStatusEntry > ( ) {
444
+ gitObjectFactory . CreateGitStatusEntry ( "file1.txt" , GitFileStatus . Modified )
445
+ } ;
446
+
447
+ var gitCommitTargets = new List < GitCommitTarget > ( ) ;
448
+ var foldedTreeEntries = new List < string > ( ) ;
449
+
450
+ var stateChangeCallbackListener = NSubstitute . Substitute . For < IStateChangeCallbackListener > ( ) ;
451
+
452
+ var treeRootGen1 = TreeBuilder . BuildTreeRoot ( gitStatusEntriesGen1 , gitStatusEntriesGen0 , gitCommitTargets ,
453
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
454
+
455
+ var fileTreeNodesGen1 = treeRootGen1 . Children . ToArray ( ) ;
456
+
457
+ fileTreeNodesGen1 [ 0 ] . Label . Should ( ) . Be ( "file1.txt" ) ;
458
+ fileTreeNodesGen1 [ 0 ] . Open . Should ( ) . BeTrue ( ) ;
459
+ fileTreeNodesGen1 [ 0 ] . Path . Should ( ) . Be ( "file1.txt" ) ;
460
+ fileTreeNodesGen1 [ 0 ] . RepositoryPath . Should ( ) . Be ( "file1.txt" ) ;
461
+ fileTreeNodesGen1 [ 0 ] . State . Should ( ) . Be ( CommitState . None ) ;
462
+ fileTreeNodesGen1 [ 0 ] . Target . Should ( ) . Be ( gitCommitTargets [ 0 ] ) ;
463
+ fileTreeNodesGen1 [ 0 ] . Children . Should ( ) . BeEmpty ( ) ;
464
+
465
+ fileTreeNodesGen1 [ 0 ] . State = CommitState . All ;
466
+
467
+ stateChangeCallbackListener . ReceivedWithAnyArgs ( 1 ) . StateChangeCallback ( Arg . Any < FileTreeNode > ( ) ) ;
468
+ stateChangeCallbackListener . ClearReceivedCalls ( ) ;
469
+
470
+ var gitStatusEntriesGen2 = new List < GitStatusEntry > ( ) {
471
+ gitObjectFactory . CreateGitStatusEntry ( "file1.txt" , GitFileStatus . Modified ) ,
472
+ gitObjectFactory . CreateGitStatusEntry ( "file2.txt" , GitFileStatus . Modified )
473
+ } ;
474
+
475
+ var treeRootGen2 = TreeBuilder . BuildTreeRoot ( gitStatusEntriesGen2 , gitStatusEntriesGen1 , gitCommitTargets ,
476
+ foldedTreeEntries , stateChangeCallbackListener . StateChangeCallback ) ;
477
+ }
478
+
451
479
private void InitializeEnvironment ( string repositoryPath , string projectPath )
452
480
{
453
481
var substituteFactory = new SubstituteFactory ( ) ;
@@ -466,4 +494,9 @@ private void InitializeEnvironment(string repositoryPath, string projectPath)
466
494
gitObjectFactory = new GitObjectFactory ( environment ) ;
467
495
}
468
496
}
497
+
498
+ interface IStateChangeCallbackListener
499
+ {
500
+ void StateChangeCallback ( FileTreeNode fileTreeNode ) ;
501
+ }
469
502
}
0 commit comments