Comments (1)
Great note, I also ran into this. I dug into BasePipelineTest.groovy and found there is an addEnvVar
method defined! Perfect!
I've updated the example to use addEnvVar
:
ℹ Also, I was actually looking to add a 'Jenkins global variable' to mock the
RUN_DISPLAY_URL
Blue Ocean variable, so I added that to the example also.
import com.lesfurets.jenkins.unit.BasePipelineTest
class TestExampleJob extends BasePipelineTest {
@Override
@BeforeEach
void setUp() {
super.setUp()
// Define environment variable
addEnvVar('MY_ENV_VAR', '0')
// Assigns false to a job parameter ENABLE_TEST_STAGE
addParam('ENABLE_TEST_STAGE', 'false')
// Defines the previous execution status
binding.getVariable('currentBuild').previousBuild = [result: 'UNSTABLE']
// Define Jenkins global variable
binding.setVariable('RUN_DISPLAY_URL', 'https://jenkins.io')
}
@Test
void verifyParam() {
assertEquals('false', binding.getVariable('params')['ENABLE_TEST_STAGE'])
}
}
I can make a pull request with some docs improvements when I have time. I'm loving this project! 😄🙏
from jenkinspipelineunit.
Related Issues (20)
- mock for build step HOT 3
- NoClassDefFoundError java/lang/Module with 1.15 & 1.16 HOT 3
- JenkinsPipelineUnit - unable to mock getId() called within script block
- Can't access 'env' properties in nested bindings
- Mock method of shared with defaut parameter
- Groovy 7 is not running my test when using gradlew clean test HOT 4
- Stack overflow in tests; possible to disable interception for a class? HOT 1
- document addParam HOT 1
- How to mock object creation?
- Jenkins shared library unit tests - missing dependencies and assert singleton values HOT 1
- post-unsuccessful action is not executed for parallel stage when a substage fails
- Is it possible to run unit tests over a Jenkinsfile in a remote git repo? HOT 8
- Performance: Cross-test caching of loaded scripts HOT 3
- Mocking different return values for a method the second time it is called HOT 3
- Accessing constant from another file
- Custom method added with registerAllowedMethod is not being utilized. HOT 13
- Why are call stack items indented with 3 spaces? HOT 2
- Specify a way to add helper.registerAllowedMethod("readYaml") as per the stage HOT 4
- How to setup an initial gradle process HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jenkinspipelineunit.