@@ -27,27 +27,12 @@ buildscript {
27
27
}
28
28
}
29
29
30
- plugins {
31
- id " jacoco"
32
- id " org.sonarqube" version " 4.3.0.3225"
33
- }
34
30
35
- apply plugin : ' jacoco'
36
- apply plugin : " org.sonarqube"
37
31
38
32
repositories {
39
33
mavenCentral()
40
34
}
41
35
42
- sonarqube {
43
- properties {
44
- property ' sonar.coverage.jacoco.xmlReportPaths' , " ${ buildDir} /reports/jacoco/test/jacocoTestReport.xml"
45
- }
46
- }
47
-
48
- jacoco {
49
- toolVersion = " 0.8.9"
50
- }
51
36
52
37
53
38
import org.yaml.snakeyaml.Yaml
@@ -110,26 +95,7 @@ configurations.archives {
110
95
extendsFrom configurations. javadoc
111
96
}
112
97
113
- def setupBCProvider () {
114
- println " Setting up BC provider"
115
- System . setProperty(" javax.net.ssl.trustStore" , " /etc/java/security/cacerts.bcfks" )
116
- System . setProperty(" javax.net.ssl.trustStoreType" , " BCFKS" )
117
- System . setProperty(" javax.net.ssl.trustStoreProvider" , " BCFIPS" )
118
- System . setProperty(" javax.net.ssl.trustStorePassword" , " changeit" )
119
-
120
- def provider = Class . forName(' org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider' ). getDeclaredConstructor(). newInstance()
121
- java.security.Security . insertProviderAt(provider, 1 )
122
- }
123
-
124
98
tasks. register(" javaTests" , Test ) {
125
- doFirst {
126
- configurations. testRuntimeClasspath. resolvedConfiguration. files. each { file ->
127
- if (file. name. startsWith(" bc-" )) {
128
- println " Found BC jar: ${ file} "
129
- }
130
- }
131
- setupBCProvider()
132
- }
133
99
dependsOn ' :bootstrap'
134
100
exclude ' /org/logstash/RSpecTests.class'
135
101
exclude ' /org/logstash/config/ir/ConfigCompilerTest.class'
@@ -143,31 +109,10 @@ tasks.register("javaTests", Test) {
143
109
exclude ' /org/logstash/plugins/factory/PluginFactoryExtTest.class'
144
110
exclude ' /org/logstash/execution/ObservedExecutionTest.class'
145
111
146
- jacoco {
147
- enabled = true
148
- destinationFile = layout. buildDirectory. file(' jacoco/test.exec' ). get(). asFile
149
- classDumpDir = layout. buildDirectory. dir(' jacoco/classpathdumps' ). get(). asFile
150
- }
151
112
}
152
113
153
- jacocoTestReport {
154
- reports {
155
- xml. required = true
156
- html. required = true
157
- }
158
- }
159
-
160
- javaTests. finalizedBy(jacocoTestReport)
161
114
162
115
tasks. register(" rubyTests" , Test ) {
163
- doFirst {
164
- configurations. testRuntimeClasspath. resolvedConfiguration. files. each { file ->
165
- if (file. name. startsWith(" bc-" )) {
166
- println " Found BC jar: ${ file} "
167
- }
168
- }
169
- setupBCProvider()
170
- }
171
116
dependsOn compileTestJava
172
117
inputs. files fileTree(" ${ projectDir} /lib" )
173
118
inputs. files fileTree(" ${ projectDir} /spec" )
@@ -223,6 +168,50 @@ task generateVersionInfoResources(type: DefaultTask) {
223
168
resourceFile. text = " logstash-core: ${ logstashCoreVersion} "
224
169
}
225
170
}
171
+ // Test execution tasks without dependencies
172
+ tasks. register(" javaTestsOnly" , Test ) {
173
+ setDependsOn([])
174
+ exclude ' /org/logstash/RSpecTests.class'
175
+ exclude ' /org/logstash/config/ir/ConfigCompilerTest.class'
176
+ exclude ' /org/logstash/config/ir/CompiledPipelineTest.class'
177
+ exclude ' /org/logstash/config/ir/EventConditionTest.class'
178
+ exclude ' /org/logstash/config/ir/PipelineConfigTest.class'
179
+ exclude ' /org/logstash/config/ir/compiler/OutputDelegatorTest.class'
180
+ exclude ' /org/logstash/config/ir/compiler/JavaCodecDelegatorTest.class'
181
+ exclude ' /org/logstash/plugins/NamespacedMetricImplTest.class'
182
+ exclude ' /org/logstash/plugins/CounterMetricImplTest.class'
183
+ exclude ' /org/logstash/plugins/factory/PluginFactoryExtTest.class'
184
+ exclude ' /org/logstash/execution/ObservedExecutionTest.class'
185
+ }
186
+
187
+ tasks. register(" rubyTestsOnly" , Test ) {
188
+ setDependsOn([])
189
+ inputs. files fileTree(" ${ projectDir} /lib" )
190
+ inputs. files fileTree(" ${ projectDir} /spec" )
191
+ systemProperty ' logstash.root.dir' , projectDir. parent
192
+
193
+ include ' /org/logstash/RSpecTests.class'
194
+ include ' /org/logstash/config/ir/ConfigCompilerTest.class'
195
+ include ' /org/logstash/config/ir/CompiledPipelineTest.class'
196
+ include ' /org/logstash/config/ir/EventConditionTest.class'
197
+ include ' /org/logstash/config/ir/PipelineConfigTest.class'
198
+ include ' /org/logstash/config/ir/compiler/OutputDelegatorTest.class'
199
+ include ' /org/logstash/config/ir/compiler/JavaCodecDelegatorTest.class'
200
+ include ' /org/logstash/plugins/NamespacedMetricImplTest.class'
201
+ include ' /org/logstash/plugins/CounterMetricImplTest.class'
202
+ include ' /org/logstash/plugins/factory/PluginFactoryExtTest.class'
203
+ include ' /org/logstash/execution/ObservedExecutionTest.class'
204
+ }
205
+
206
+ // Setup task combining all prerequisites
207
+ tasks. register(" testSetup" ) {
208
+ dependsOn ' :bootstrap'
209
+ dependsOn ' classes'
210
+ dependsOn ' testClasses'
211
+ dependsOn ' compileTestJava'
212
+ dependsOn ' copyRuntimeLibs'
213
+ dependsOn ' generateVersionInfoResources'
214
+ }
226
215
sourceSets {
227
216
main { output. dir(generateVersionInfoResources. outputs. files) }
228
217
}
@@ -294,4 +283,4 @@ dependencies {
294
283
api group : ' org.apache.httpcomponents' , name : ' httpclient' , version : ' 4.5.14'
295
284
api group : ' commons-codec' , name : ' commons-codec' , version : ' 1.17.0'
296
285
api group : ' org.apache.httpcomponents' , name : ' httpcore' , version : ' 4.4.16'
297
- }
286
+ }
0 commit comments