Open PavelKa opened 3 years ago
I am not quite sure I understand the question. It sounds like you're asking:
Assuming
default
e.g. getAllProperties(default: ["x": "valueX")
Then
I would like a unit-test failure if my code calls this function with a typo, e.g.
getAllProperties(deflat: ["x": "valueX")
Is that correct?
Yes, that's what I need. There is method readProperties ( from the "Pipeline Utility Steps plugin") which expects "defaults" on input in my example, but I used "default". The test passes because I also used "default" in the getPipelineMock. I would like to find these types of errors/typos before deploying to Jenkins.
Desired Behavior
I have simple class method wich I want to test :
I'm using JenkinsPipelineSpecification to write tests in my project but in this case, readProperties are mocked and test will not detect that I have typo in parameter default. Also, the compiler will not fail. Is it possible to set up a test to fail or somehow configure to really call readProperties step ? Mocking using
1 * getPipelineMock("readProperties")(default:["x":"valueX"],file:"./appId/env.properties") >> ["y" : "valueY"]
doesn't help as there is same typo as in the method implementationBenefits