@@ -153,36 +153,36 @@ func createTmpWrapper(cfg config.Configuration) *config.Wrapper {
153
153
}
154
154
155
155
func newState (cfg config.Configuration ) (* config.Wrapper , * Model ) {
156
- db := db .OpenMemory ()
157
-
158
156
wcfg := createTmpWrapper (cfg )
159
157
160
- m := NewModel (wcfg , myID , "syncthing" , "dev" , db , nil )
161
- for _ , folder := range cfg .Folders {
162
- if ! folder .Paused {
163
- m .AddFolder (folder )
164
- m .StartFolder (folder .ID )
165
- }
166
- }
167
- m .ServeBackground ()
158
+ m := setupModel (wcfg )
168
159
169
160
for _ , dev := range cfg .Devices {
170
161
m .AddConnection (& fakeConnection {id : dev .DeviceID }, protocol.HelloResult {})
171
162
}
163
+
172
164
return wcfg , m
173
165
}
174
166
175
- func TestRequest ( t * testing. T ) {
167
+ func setupModel ( w * config. Wrapper ) * Model {
176
168
db := db .OpenMemory ()
169
+ m := NewModel (w , myID , "syncthing" , "dev" , db , nil )
170
+ m .ServeBackground ()
171
+ for id , cfg := range w .Folders () {
172
+ if ! cfg .Paused {
173
+ m .AddFolder (cfg )
174
+ m .StartFolder (id )
175
+ }
176
+ }
177
177
178
- m := NewModel ( defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
178
+ m . ScanFolders ( )
179
179
180
- // device1 shares default, but device2 doesn't
181
- m .AddFolder (defaultFolderConfig )
182
- m .StartFolder ("default" )
183
- m .ServeBackground ()
180
+ return m
181
+ }
182
+
183
+ func TestRequest (t * testing.T ) {
184
+ m := setupModel (defaultCfgWrapper )
184
185
defer m .Stop ()
185
- m .ScanFolder ("default" )
186
186
187
187
// Existing, shared file
188
188
res , err := m .Request (device1 , "default" , "foo" , 6 , 0 , nil , 0 , false )
@@ -250,11 +250,7 @@ func BenchmarkIndex_100(b *testing.B) {
250
250
}
251
251
252
252
func benchmarkIndex (b * testing.B , nfiles int ) {
253
- db := db .OpenMemory ()
254
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
255
- m .AddFolder (defaultFolderConfig )
256
- m .StartFolder ("default" )
257
- m .ServeBackground ()
253
+ m := setupModel (defaultCfgWrapper )
258
254
defer m .Stop ()
259
255
260
256
files := genFiles (nfiles )
@@ -280,11 +276,7 @@ func BenchmarkIndexUpdate_10000_1(b *testing.B) {
280
276
}
281
277
282
278
func benchmarkIndexUpdate (b * testing.B , nfiles , nufiles int ) {
283
- db := db .OpenMemory ()
284
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
285
- m .AddFolder (defaultFolderConfig )
286
- m .StartFolder ("default" )
287
- m .ServeBackground ()
279
+ m := setupModel (defaultCfgWrapper )
288
280
defer m .Stop ()
289
281
290
282
files := genFiles (nfiles )
@@ -486,12 +478,8 @@ func (f *fakeConnection) sendIndexUpdate() {
486
478
}
487
479
488
480
func BenchmarkRequestOut (b * testing.B ) {
489
- db := db .OpenMemory ()
490
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
491
- m .AddFolder (defaultFolderConfig )
492
- m .ServeBackground ()
481
+ m := setupModel (defaultCfgWrapper )
493
482
defer m .Stop ()
494
- m .ScanFolder ("default" )
495
483
496
484
const n = 1000
497
485
files := genFiles (n )
@@ -518,12 +506,7 @@ func BenchmarkRequestOut(b *testing.B) {
518
506
func BenchmarkRequestInSingleFile (b * testing.B ) {
519
507
testOs := & fatalOs {b }
520
508
521
- db := db .OpenMemory ()
522
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
523
- m .AddFolder (defaultFolderConfig )
524
- m .ServeBackground ()
525
- defer m .Stop ()
526
- m .ScanFolder ("default" )
509
+ m := setupModel (defaultCfgWrapper )
527
510
528
511
buf := make ([]byte , 128 << 10 )
529
512
rand .Read (buf )
@@ -1731,16 +1714,9 @@ func TestIgnores(t *testing.T) {
1731
1714
testOs .MkdirAll (filepath .Join ("testdata" , config .DefaultMarkerName ), 0644 )
1732
1715
ioutil .WriteFile ("testdata/.stignore" , []byte (".*\n quux\n " ), 0644 )
1733
1716
1734
- db := db .OpenMemory ()
1735
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
1736
- m .ServeBackground ()
1717
+ m := setupModel (defaultCfgWrapper )
1737
1718
defer m .Stop ()
1738
1719
1739
- // m.cfg.SetFolder is not usable as it is non-blocking, and there is no
1740
- // way to know when the folder is actually added.
1741
- m .AddFolder (defaultFolderConfig )
1742
- m .StartFolder ("default" )
1743
-
1744
1720
// Reach in and update the ignore matcher to one that always does
1745
1721
// reloads when asked to, instead of checking file mtimes. This is
1746
1722
// because we will be changing the files on disk often enough that the
@@ -2426,16 +2402,7 @@ func TestIssue3028(t *testing.T) {
2426
2402
2427
2403
// Create a model and default folder
2428
2404
2429
- db := db .OpenMemory ()
2430
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
2431
- defCfg := defaultFolderConfig .Copy ()
2432
- defCfg .RescanIntervalS = 86400
2433
- m .AddFolder (defCfg )
2434
- m .StartFolder ("default" )
2435
- m .ServeBackground ()
2436
-
2437
- // Make sure the initial scan has finished (ScanFolders is blocking)
2438
- m .ScanFolders ()
2405
+ m := setupModel (defaultCfgWrapper )
2439
2406
2440
2407
// Get a count of how many files are there now
2441
2408
@@ -2580,12 +2547,7 @@ func TestIssue2782(t *testing.T) {
2580
2547
}
2581
2548
defer testOs .RemoveAll (testDir )
2582
2549
2583
- db := db .OpenMemory ()
2584
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
2585
- m .AddFolder (testFolderConfig ("~/" + testName + "/synclink/" ))
2586
- m .StartFolder ("default" )
2587
- m .ServeBackground ()
2588
- defer m .Stop ()
2550
+ m := setupModel (defaultCfgWrapper )
2589
2551
2590
2552
if err := m .ScanFolder ("default" ); err != nil {
2591
2553
t .Error ("scan error:" , err )
@@ -2627,19 +2589,15 @@ func TestIndexesForUnknownDevicesDropped(t *testing.T) {
2627
2589
func TestSharedWithClearedOnDisconnect (t * testing.T ) {
2628
2590
testOs := & fatalOs {t }
2629
2591
2630
- dbi := db .OpenMemory ()
2631
-
2632
2592
wcfg := createTmpWrapper (defaultCfg )
2633
2593
wcfg .SetDevice (config .NewDeviceConfiguration (device2 , "device2" ))
2634
2594
fcfg := wcfg .FolderList ()[0 ]
2635
2595
fcfg .Devices = append (fcfg .Devices , config.FolderDeviceConfiguration {DeviceID : device2 })
2636
2596
wcfg .SetFolder (fcfg )
2637
2597
defer testOs .Remove (wcfg .ConfigPath ())
2638
2598
2639
- m := NewModel (wcfg , myID , "syncthing" , "dev" , dbi , nil )
2640
- m .AddFolder (fcfg )
2641
- m .StartFolder (fcfg .ID )
2642
- m .ServeBackground ()
2599
+ m := setupModel (wcfg )
2600
+ defer m .Stop ()
2643
2601
2644
2602
conn1 := & fakeConnection {id : device1 }
2645
2603
m .AddConnection (conn1 , protocol.HelloResult {})
@@ -2746,11 +2704,7 @@ func TestIssue3496(t *testing.T) {
2746
2704
// percentages. Lets make sure that doesn't happen. Also do some general
2747
2705
// checks on the completion calculation stuff.
2748
2706
2749
- dbi := db .OpenMemory ()
2750
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
2751
- m .AddFolder (defaultFolderConfig )
2752
- m .StartFolder ("default" )
2753
- m .ServeBackground ()
2707
+ m := setupModel (defaultCfgWrapper )
2754
2708
defer m .Stop ()
2755
2709
2756
2710
m .ScanFolder ("default" )
@@ -2819,11 +2773,7 @@ func TestIssue3496(t *testing.T) {
2819
2773
}
2820
2774
2821
2775
func TestIssue3804 (t * testing.T ) {
2822
- dbi := db .OpenMemory ()
2823
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
2824
- m .AddFolder (defaultFolderConfig )
2825
- m .StartFolder ("default" )
2826
- m .ServeBackground ()
2776
+ m := setupModel (defaultCfgWrapper )
2827
2777
defer m .Stop ()
2828
2778
2829
2779
// Subdirs ending in slash should be accepted
@@ -2834,11 +2784,7 @@ func TestIssue3804(t *testing.T) {
2834
2784
}
2835
2785
2836
2786
func TestIssue3829 (t * testing.T ) {
2837
- dbi := db .OpenMemory ()
2838
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
2839
- m .AddFolder (defaultFolderConfig )
2840
- m .StartFolder ("default" )
2841
- m .ServeBackground ()
2787
+ m := setupModel (defaultCfgWrapper )
2842
2788
defer m .Stop ()
2843
2789
2844
2790
// Empty subdirs should be accepted
@@ -2853,19 +2799,15 @@ func TestNoRequestsFromPausedDevices(t *testing.T) {
2853
2799
2854
2800
testOs := & fatalOs {t }
2855
2801
2856
- dbi := db .OpenMemory ()
2857
-
2858
2802
wcfg := createTmpWrapper (defaultCfg )
2859
2803
wcfg .SetDevice (config .NewDeviceConfiguration (device2 , "device2" ))
2860
2804
fcfg := wcfg .FolderList ()[0 ]
2861
2805
fcfg .Devices = append (fcfg .Devices , config.FolderDeviceConfiguration {DeviceID : device2 })
2862
2806
wcfg .SetFolder (fcfg )
2863
2807
defer testOs .Remove (wcfg .ConfigPath ())
2864
2808
2865
- m := NewModel (wcfg , myID , "syncthing" , "dev" , dbi , nil )
2866
- m .AddFolder (fcfg )
2867
- m .StartFolder (fcfg .ID )
2868
- m .ServeBackground ()
2809
+ m := setupModel (wcfg )
2810
+ defer m .Stop ()
2869
2811
2870
2812
file := testDataExpected ["foo" ]
2871
2813
files := m .folderFiles ["default" ]
@@ -2959,13 +2901,7 @@ func TestIssue2571(t *testing.T) {
2959
2901
fd .Close ()
2960
2902
}
2961
2903
2962
- dbi := db .OpenMemory ()
2963
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
2964
- m .AddFolder (defaultFolderConfig )
2965
- m .StartFolder ("default" )
2966
- m .ServeBackground ()
2967
- defer m .Stop ()
2968
- m .ScanFolder ("default" )
2904
+ m := setupModel (defaultCfgWrapper )
2969
2905
2970
2906
if err = testFs .RemoveAll ("toLink" ); err != nil {
2971
2907
t .Fatal (err )
@@ -3011,13 +2947,7 @@ func TestIssue4573(t *testing.T) {
3011
2947
}
3012
2948
fd .Close ()
3013
2949
3014
- dbi := db .OpenMemory ()
3015
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
3016
- m .AddFolder (defaultFolderConfig )
3017
- m .StartFolder ("default" )
3018
- m .ServeBackground ()
3019
- defer m .Stop ()
3020
- m .ScanFolder ("default" )
2950
+ m := setupModel (defaultCfgWrapper )
3021
2951
3022
2952
err = defaultFs .Chmod ("inaccessible" , 0000 )
3023
2953
if err != nil {
@@ -3080,13 +3010,7 @@ func TestInternalScan(t *testing.T) {
3080
3010
}
3081
3011
}
3082
3012
3083
- dbi := db .OpenMemory ()
3084
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
3085
- m .AddFolder (defaultFolderConfig )
3086
- m .StartFolder ("default" )
3087
- m .ServeBackground ()
3088
- defer m .Stop ()
3089
- m .ScanFolder ("default" )
3013
+ m := setupModel (defaultCfgWrapper )
3090
3014
3091
3015
for _ , dir := range baseDirs {
3092
3016
if err = testFs .RemoveAll (dir ); err != nil {
@@ -3191,13 +3115,8 @@ func TestRemoveDirWithContent(t *testing.T) {
3191
3115
}
3192
3116
fd .Close ()
3193
3117
3194
- dbi := db .OpenMemory ()
3195
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
3196
- m .AddFolder (defaultFolderConfig )
3197
- m .StartFolder ("default" )
3198
- m .ServeBackground ()
3118
+ m := setupModel (defaultCfgWrapper )
3199
3119
defer m .Stop ()
3200
- m .ScanFolder ("default" )
3201
3120
3202
3121
dir , ok := m .CurrentFolderFile ("default" , "dirwith" )
3203
3122
if ! ok {
@@ -3256,13 +3175,8 @@ func TestIssue4475(t *testing.T) {
3256
3175
t .Fatal (err )
3257
3176
}
3258
3177
3259
- dbi := db .OpenMemory ()
3260
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , dbi , nil )
3261
- m .AddFolder (defaultFolderConfig )
3262
- m .StartFolder ("default" )
3263
- m .ServeBackground ()
3178
+ m := setupModel (defaultCfgWrapper )
3264
3179
defer m .Stop ()
3265
- m .ScanFolder ("default" )
3266
3180
3267
3181
// Scenario: Dir is deleted locally and before syncing/index exchange
3268
3182
// happens, a file is create in that dir on the remote.
@@ -3331,8 +3245,6 @@ func TestVersionRestore(t *testing.T) {
3331
3245
}
3332
3246
defer testOs .RemoveAll (dir )
3333
3247
3334
- dbi := db .OpenMemory ()
3335
-
3336
3248
fcfg := config .NewFolderConfiguration (myID , "default" , "default" , fs .FilesystemTypeBasic , dir )
3337
3249
fcfg .Versioning .Type = "simple"
3338
3250
fcfg .FSWatcherEnabled = false
@@ -3344,11 +3256,7 @@ func TestVersionRestore(t *testing.T) {
3344
3256
cfg := createTmpWrapper (rawConfig )
3345
3257
defer testOs .Remove (cfg .ConfigPath ())
3346
3258
3347
- m := NewModel (cfg , myID , "syncthing" , "dev" , dbi , nil )
3348
- m .AddFolder (fcfg )
3349
- m .StartFolder ("default" )
3350
- m .ServeBackground ()
3351
- defer m .Stop ()
3259
+ m := setupModel (cfg )
3352
3260
m .ScanFolder ("default" )
3353
3261
3354
3262
sentinel , err := time .ParseInLocation (versioner .TimeFormat , "20200101-010101" , locationLocal )
@@ -3536,15 +3444,10 @@ func TestPausedFolders(t *testing.T) {
3536
3444
testOs := & fatalOs {t }
3537
3445
3538
3446
// Create a separate wrapper not to pollute other tests.
3539
- cfg := defaultCfgWrapper .RawCopy ()
3540
- wrapper := createTmpWrapper (cfg )
3447
+ wrapper := createTmpWrapper (defaultCfgWrapper .RawCopy ())
3541
3448
defer testOs .Remove (wrapper .ConfigPath ())
3542
3449
3543
- db := db .OpenMemory ()
3544
- m := NewModel (wrapper , myID , "syncthing" , "dev" , db , nil )
3545
- m .AddFolder (defaultFolderConfig )
3546
- m .StartFolder ("default" )
3547
- m .ServeBackground ()
3450
+ m := setupModel (wrapper )
3548
3451
defer m .Stop ()
3549
3452
3550
3453
if err := m .ScanFolder ("default" ); err != nil {
@@ -3649,12 +3552,7 @@ func TestIssue4903(t *testing.T) {
3649
3552
func TestIssue5002 (t * testing.T ) {
3650
3553
// recheckFile should not panic when given an index equal to the number of blocks
3651
3554
3652
- db := db .OpenMemory ()
3653
- m := NewModel (defaultCfgWrapper , myID , "syncthing" , "dev" , db , nil )
3654
- m .AddFolder (defaultFolderConfig )
3655
- m .StartFolder ("default" )
3656
-
3657
- m .ServeBackground ()
3555
+ m := setupModel (defaultCfgWrapper )
3658
3556
defer m .Stop ()
3659
3557
3660
3558
if err := m .ScanFolder ("default" ); err != nil {
@@ -3721,12 +3619,7 @@ func TestFolderRestartZombies(t *testing.T) {
3721
3619
folderCfg .FilesystemType = fs .FilesystemTypeFake
3722
3620
wrapper .SetFolder (folderCfg )
3723
3621
3724
- db := db .OpenMemory ()
3725
- m := NewModel (wrapper , myID , "syncthing" , "dev" , db , nil )
3726
- m .AddFolder (folderCfg )
3727
- m .StartFolder ("default" )
3728
-
3729
- m .ServeBackground ()
3622
+ m := setupModel (wrapper )
3730
3623
defer m .Stop ()
3731
3624
3732
3625
// Make sure the folder is up and running, because we want to count it.
0 commit comments