1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2024-12-14 11:03:09 +02:00
sap-jenkins-library/test/groovy/MavenExecuteTest.groovy

73 lines
2.7 KiB
Groovy
Raw Normal View History

import org.junit.Rule
import org.junit.Test
2018-01-16 16:03:00 +02:00
import org.junit.rules.RuleChain
import util.BasePiperTest
import util.JenkinsDockerExecuteRule
import util.JenkinsShellCallRule
import util.JenkinsStepRule
import util.Rules
import static org.junit.Assert.assertEquals
import static org.junit.Assert.assertTrue
2018-05-30 12:39:01 +02:00
class MavenExecuteTest extends BasePiperTest {
Map dockerParameters
2018-01-16 16:03:00 +02:00
private JenkinsShellCallRule jscr = new JenkinsShellCallRule(this)
private JenkinsDockerExecuteRule jder = new JenkinsDockerExecuteRule(this)
private JenkinsStepRule jsr = new JenkinsStepRule(this)
@Rule
public RuleChain ruleChain = Rules
.getCommonRules(this)
.around(jder)
.around(jscr)
.around(jsr)
@Test
void testExecuteBasicMavenCommand() throws Exception {
jsr.step.mavenExecute(script: nullScript, goals: 'clean install')
assertEquals('maven:3.5-jdk-7', jder.dockerParams.dockerImage)
2018-01-16 16:03:00 +02:00
assert jscr.shell[0] == 'mvn --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn clean install'
}
@Test
void testExecuteBasicMavenCommandWithDownloadLogsEnabled() throws Exception {
jsr.step.mavenExecute(script: nullScript, goals: 'clean install', logSuccessfulMavenTransfers: true)
assertEquals('maven:3.5-jdk-7', jder.dockerParams.dockerImage)
assert jscr.shell[0] == 'mvn --batch-mode clean install'
}
@Test
void testExecuteMavenCommandWithParameter() throws Exception {
jsr.step.mavenExecute(
2018-05-30 12:39:01 +02:00
script: nullScript,
dockerImage: 'maven:3.5-jdk-8-alpine',
goals: 'clean install',
globalSettingsFile: 'globalSettingsFile.xml',
projectSettingsFile: 'projectSettingsFile.xml',
pomPath: 'pom.xml',
flags: '-o',
m2Path: 'm2Path',
defines: '-Dmaven.tests.skip=true')
assertEquals('maven:3.5-jdk-8-alpine', jder.dockerParams.dockerImage)
String mvnCommand = "mvn --global-settings 'globalSettingsFile.xml' -Dmaven.repo.local='m2Path' --settings 'projectSettingsFile.xml' --file 'pom.xml' -o --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn clean install -Dmaven.tests.skip=true"
2018-01-16 16:03:00 +02:00
assertTrue(jscr.shell.contains(mvnCommand))
}
@Test
void testMavenCommandForwardsDockerOptions() throws Exception {
jsr.step.mavenExecute(script: nullScript, goals: 'clean install')
assertEquals('maven:3.5-jdk-7', jder.dockerParams.dockerImage)
assert jscr.shell[0] == 'mvn --batch-mode -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn clean install'
}
}