@@ -44,96 +44,27 @@ public class BindingProcessImplTests
44
44
public void Ctor_ArgChecks ( )
45
45
{
46
46
var bindingArgs = CreateBindCommandArgs ( ) ;
47
- var exclusionSettingsStorage = Mock . Of < IExclusionSettingsStorage > ( ) ;
48
47
var qpDownloader = Mock . Of < IQualityProfileDownloader > ( ) ;
49
48
var sonarQubeService = Mock . Of < ISonarQubeService > ( ) ;
50
49
var logger = Mock . Of < ILogger > ( ) ;
51
50
52
51
// 1. Null binding args
53
- Action act = ( ) => new BindingProcessImpl ( null , exclusionSettingsStorage , sonarQubeService , qpDownloader , logger ) ;
52
+ Action act = ( ) => new BindingProcessImpl ( null , sonarQubeService , qpDownloader , logger ) ;
54
53
act . Should ( ) . ThrowExactly < ArgumentNullException > ( ) . And . ParamName . Should ( ) . Be ( "bindingArgs" ) ;
55
54
56
- // 2. Null exclusion settings storage
57
- act = ( ) => new BindingProcessImpl ( bindingArgs , null , sonarQubeService , qpDownloader , logger ) ;
58
- act . Should ( ) . ThrowExactly < ArgumentNullException > ( ) . And . ParamName . Should ( ) . Be ( "exclusionSettingsStorage" ) ;
59
-
60
55
// 3. Null SonarQube service
61
- act = ( ) => new BindingProcessImpl ( bindingArgs , exclusionSettingsStorage , null , qpDownloader , logger ) ;
56
+ act = ( ) => new BindingProcessImpl ( bindingArgs , null , qpDownloader , logger ) ;
62
57
act . Should ( ) . ThrowExactly < ArgumentNullException > ( ) . And . ParamName . Should ( ) . Be ( "sonarQubeService" ) ;
63
58
64
59
// 4. Null QP downloader
65
- act = ( ) => new BindingProcessImpl ( bindingArgs , exclusionSettingsStorage , sonarQubeService , null , logger ) ;
60
+ act = ( ) => new BindingProcessImpl ( bindingArgs , sonarQubeService , null , logger ) ;
66
61
act . Should ( ) . ThrowExactly < ArgumentNullException > ( ) . And . ParamName . Should ( ) . Be ( "qualityProfileDownloader" ) ;
67
62
68
63
// 5. Null logger
69
- act = ( ) => new BindingProcessImpl ( bindingArgs , exclusionSettingsStorage , sonarQubeService , qpDownloader , null ) ;
64
+ act = ( ) => new BindingProcessImpl ( bindingArgs , sonarQubeService , qpDownloader , null ) ;
70
65
act . Should ( ) . ThrowExactly < ArgumentNullException > ( ) . And . ParamName . Should ( ) . Be ( "logger" ) ;
71
66
}
72
67
73
- [ TestMethod ]
74
- public async Task SaveServerExclusionsAsync_ReturnsTrue ( )
75
- {
76
- var bindingArgs = CreateBindCommandArgs ( projectKey : "projectKey" ) ;
77
- var logger = new TestLogger ( logToConsole : true ) ;
78
-
79
- ServerExclusions settings = CreateSettings ( ) ;
80
-
81
- var sonarQubeService = new Mock < ISonarQubeService > ( ) ;
82
- sonarQubeService . Setup ( s => s . GetServerExclusions ( "projectKey" , It . IsAny < CancellationToken > ( ) ) ) . Returns ( Task . FromResult ( settings ) ) ;
83
-
84
- var exclusionSettingsStorage = new Mock < IExclusionSettingsStorage > ( ) ;
85
-
86
- var testSubject = CreateTestSubject ( bindingArgs : bindingArgs ,
87
- sonarQubeService : sonarQubeService . Object ,
88
- exclusionSettingsStorage : exclusionSettingsStorage . Object ,
89
- logger : logger ) ;
90
-
91
- await testSubject . SaveServerExclusionsAsync ( CancellationToken . None ) ;
92
-
93
- exclusionSettingsStorage . Verify ( fs => fs . SaveSettings ( settings ) , Times . Once ) ;
94
- logger . AssertOutputStrings ( 0 ) ;
95
- }
96
-
97
- [ TestMethod ]
98
- public async Task SaveServerExclusionsAsync_HasError_ReturnsFalse ( )
99
- {
100
- var logger = new TestLogger ( logToConsole : true ) ;
101
- var bindingArgs = CreateBindCommandArgs ( projectKey : "projectKey" ) ;
102
-
103
- var sonarQubeService = new Mock < ISonarQubeService > ( ) ;
104
- sonarQubeService . Setup ( s => s . GetServerExclusions ( "projectKey" , It . IsAny < CancellationToken > ( ) ) ) . Throws ( new Exception ( "Expected Error" ) ) ;
105
-
106
- var testSubject = CreateTestSubject (
107
- bindingArgs : bindingArgs ,
108
- sonarQubeService : sonarQubeService . Object ,
109
- logger : logger ) ;
110
-
111
- var result = await testSubject . SaveServerExclusionsAsync ( CancellationToken . None ) ;
112
-
113
- result . Should ( ) . BeFalse ( ) ;
114
- logger . AssertOutputStrings ( 1 ) ;
115
- logger . AssertPartialOutputStrings ( "Expected Error" ) ;
116
- }
117
-
118
- [ TestMethod ]
119
- public void SaveServerExclusionsAsync_HasCriticalError_Throws ( )
120
- {
121
- var logger = new TestLogger ( logToConsole : true ) ;
122
- var bindingArgs = CreateBindCommandArgs ( projectKey : "projectKey" ) ;
123
-
124
- var sonarQubeService = new Mock < ISonarQubeService > ( ) ;
125
- sonarQubeService . Setup ( s => s . GetServerExclusions ( "projectKey" , It . IsAny < CancellationToken > ( ) ) ) . Throws ( new StackOverflowException ( "Critical Error" ) ) ;
126
-
127
- var testSubject = CreateTestSubject ( bindingArgs : bindingArgs ,
128
- sonarQubeService : sonarQubeService . Object ,
129
- logger : logger ) ;
130
-
131
- Func < Task < bool > > act = async ( ) => await testSubject . SaveServerExclusionsAsync ( CancellationToken . None ) ;
132
-
133
- act . Should ( ) . ThrowExactly < StackOverflowException > ( ) . WithMessage ( "Critical Error" ) ;
134
- logger . AssertOutputStrings ( 0 ) ;
135
- }
136
-
137
68
private static ServerExclusions CreateSettings ( )
138
69
{
139
70
return new ServerExclusions
@@ -159,7 +90,7 @@ public async Task DownloadQualityProfile_CreatesBoundProjectAndCallsQPDownloader
159
90
var result = await testSubject . DownloadQualityProfileAsync ( progress , CancellationToken . None ) ;
160
91
161
92
result . Should ( ) . BeTrue ( ) ;
162
-
93
+
163
94
qpDownloader . Verify ( x => x . UpdateAsync ( It . IsAny < BoundServerProject > ( ) , progress , It . IsAny < CancellationToken > ( ) ) ,
164
95
Times . Once ) ;
165
96
@@ -171,7 +102,7 @@ public async Task DownloadQualityProfile_CreatesBoundProjectAndCallsQPDownloader
171
102
actualProject . ServerProjectKey . Should ( ) . Be ( "the project key" ) ;
172
103
}
173
104
174
- [ TestMethod ]
105
+ [ TestMethod ]
175
106
public async Task DownloadQualityProfile_HandlesInvalidOperationException ( )
176
107
{
177
108
var qpDownloader = new Mock < IQualityProfileDownloader > ( ) ;
@@ -201,19 +132,16 @@ public async Task DownloadQualityProfile_HandlesInvalidOperationException()
201
132
#region Helpers
202
133
203
134
private BindingProcessImpl CreateTestSubject ( BindCommandArgs bindingArgs = null ,
204
- IExclusionSettingsStorage exclusionSettingsStorage = null ,
205
135
ISonarQubeService sonarQubeService = null ,
206
136
IQualityProfileDownloader qpDownloader = null ,
207
137
ILogger logger = null )
208
138
{
209
139
bindingArgs = bindingArgs ?? CreateBindCommandArgs ( ) ;
210
140
sonarQubeService ??= Mock . Of < ISonarQubeService > ( ) ;
211
- exclusionSettingsStorage ??= Mock . Of < IExclusionSettingsStorage > ( ) ;
212
141
qpDownloader ??= Mock . Of < IQualityProfileDownloader > ( ) ;
213
142
logger ??= new TestLogger ( logToConsole : true ) ;
214
143
215
144
return new BindingProcessImpl ( bindingArgs ,
216
- exclusionSettingsStorage ,
217
145
sonarQubeService ,
218
146
qpDownloader ,
219
147
logger ) ;
0 commit comments