Skip to content

Commit

Permalink
Merge branch 'update-configuration' of https://github.com/SAP/jenkins…
Browse files Browse the repository at this point in the history
…-library into s4sdk-pipeline-2
  • Loading branch information
daniel-kurzynski committed Apr 17, 2018
2 parents 6ddfa2d + 6dd9746 commit 8193f2d
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
10 changes: 10 additions & 0 deletions src/com/sap/piper/ConfigurationLoader.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,16 @@ class ConfigurationLoader implements Serializable {
return DefaultValueCache.getInstance()?.getDefaultValues()?.general ?: [:]
}

@NonCPS
def static postActionConfiguration(script, String actionName){
return loadConfiguration(script, 'postActions', actionName, ConfigurationType.CUSTOM_CONFIGURATION)
}

@NonCPS
static boolean isFeatureActive(script, String feature){
generalConfiguration(script).features?.get(feature) ?: false
}

@NonCPS
private static loadConfiguration(script, String type, String entryName, ConfigurationType configType){
switch (configType) {
Expand Down
15 changes: 14 additions & 1 deletion test/groovy/com/sap/piper/ConfigurationLoaderTest.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,10 @@ class ConfigurationLoaderTest {

private static getScript() {
Map configuration = [:]
configuration.general = [productiveBranch: 'master']
configuration.general = [productiveBranch: 'master', features: [feature1: true]]
configuration.steps = [executeMaven: [dockerImage: 'maven:3.2-jdk-8-onbuild']]
configuration.stages = [staticCodeChecks: [pmdExcludes: '**']]
configuration.postActions = [sendEmail: [recipients: 'myEmail']]

Map defaultConfiguration = [:]
defaultConfiguration.general = [productiveBranch: 'develop']
Expand Down Expand Up @@ -56,4 +57,16 @@ class ConfigurationLoaderTest {
Map config = ConfigurationLoader.defaultGeneralConfiguration(getScript())
Assert.assertEquals('develop', config.productiveBranch)
}

@Test
void testIsFeatureActive(){
Assert.assertTrue(ConfigurationLoader.isFeatureActive(getScript(), 'feature1'))
Assert.assertFalse(ConfigurationLoader.isFeatureActive(getScript(),'feature2'))
}

@Test
void testLostPostActionConfiguration(){
Map config = ConfigurationLoader.postActionConfiguration(getScript(), 'sendEmail')
Assert.assertEquals('myEmail', config.recipients)
}
}

0 comments on commit 8193f2d

Please sign in to comment.