1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2025-02-21 19:48:53 +02:00

add further tests

This commit is contained in:
Christopher Fenner 2018-02-05 13:48:39 +01:00
parent 853bc963c0
commit 87de7417ca
2 changed files with 34 additions and 20 deletions

View File

@ -65,22 +65,6 @@ class ChecksPublishResultsTest extends BasePipelineTest {
assertTrue("WarningsPublisher options not empty", publisherStepOptions['WarningsPublisher'] == null)
}
@Test
void testPublishForJavaWithChangedDefaultSettings() throws Exception {
// pmd has been set to active: true in step configuration
stepUnderTest.call()
//TODO: add rule to load different pipeline config
//TODO: adapt isMap to not override the step config
assertTrue("AnalysisPublisher options not set", publisherStepOptions['AnalysisPublisher'] != null)
assertTrue("PmdPublisher options not set", publisherStepOptions['PmdPublisher'] != null)
// ensure nothing else is published
assertTrue("DryPublisher options not empty", publisherStepOptions['DryPublisher'] == null)
assertTrue("FindBugsPublisher options not empty", publisherStepOptions['FindBugsPublisher'] == null)
assertTrue("CheckStylePublisher options not empty", publisherStepOptions['CheckStylePublisher'] == null)
assertTrue("WarningsPublisher options not empty", publisherStepOptions['WarningsPublisher'] == null)
}
@Test
void testPublishForJavaScriptWithDefaultSettings() throws Exception {
stepUnderTest.call(eslint: true)
@ -131,6 +115,34 @@ class ChecksPublishResultsTest extends BasePipelineTest {
assertTrue("CheckStylePublisher options not empty", publisherStepOptions['CheckStylePublisher'] == null)
}
@Test
void testPublishNothingExplicitFalse() throws Exception {
stepUnderTest.call(pmd: false)
assertTrue("AnalysisPublisher options not set", publisherStepOptions['AnalysisPublisher'] != null)
// ensure nothing else is published
assertTrue("PmdPublisher options not set", publisherStepOptions['PmdPublisher'] == null)
assertTrue("DryPublisher options not empty", publisherStepOptions['DryPublisher'] == null)
assertTrue("FindBugsPublisher options not empty", publisherStepOptions['FindBugsPublisher'] == null)
assertTrue("CheckStylePublisher options not empty", publisherStepOptions['CheckStylePublisher'] == null)
assertTrue("WarningsPublisher options not empty", publisherStepOptions['WarningsPublisher'] == null)
}
@Test
void testPublishWithChangedStepDefaultSettings() throws Exception {
// pmd has been set to active: true in step configuration
stepUnderTest.call()
//TODO: add rule to load different pipeline config
assertTrue("AnalysisPublisher options not set", publisherStepOptions['AnalysisPublisher'] != null)
assertTrue("PmdPublisher options not set", publisherStepOptions['PmdPublisher'] != null)
// ensure nothing else is published
assertTrue("DryPublisher options not empty", publisherStepOptions['DryPublisher'] == null)
assertTrue("FindBugsPublisher options not empty", publisherStepOptions['FindBugsPublisher'] == null)
assertTrue("CheckStylePublisher options not empty", publisherStepOptions['CheckStylePublisher'] == null)
assertTrue("WarningsPublisher options not empty", publisherStepOptions['WarningsPublisher'] == null)
}
@Test
void testPublishWithCustomPattern() throws Exception {
stepUnderTest.call(eslint: [pattern: 'my-fancy-file.ext'], pmd: [pattern: 'this-is-not-a-patter.xml'])

View File

@ -185,13 +185,15 @@ def isMap(object){
}
@NonCPS
def toMap(parameter, activeByDefault = false){
def toMap(parameter){
if(isMap(parameter))
parameter.put('active', true)
else if(activeByDefault && !Boolean.FALSE.equals(parameter) || Boolean.TRUE.equals(parameter))
else if(Boolean.TRUE.equals(parameter))
parameter = [active: true]
else
else if(Boolean.FALSE.equals(parameter))
parameter = [active: false]
else
parameter = [:]
return parameter
}
@ -228,7 +230,7 @@ def createCommonOptionsMap(publisherName, settings){
@NonCPS
def prepare(parameters){
// ensure tool maps are initialized
parameters.aggregation = toMap(parameters.aggregation, true)
parameters.aggregation = toMap(parameters.aggregation)
parameters.tasks = toMap(parameters.tasks)
parameters.pmd = toMap(parameters.pmd)
parameters.cpd = toMap(parameters.cpd)