@@ -201,6 +201,72 @@ class RunnerServiceIntegrationTest : CsmRedisTestBase() {
201201 assertNotEquals(runnerApiService.getRunnerService(), runnerApiService.getRunnerService())
202202 }
203203
204+ @Test
205+ fun `test createRunner and check parameterValues data` () {
206+
207+ logger.info(
208+ " should create a new Runner and retrieve parameter varType from solution ignoring the one declared" )
209+ val newRunner =
210+ makeRunner(
211+ organizationSaved.id!! ,
212+ workspaceSaved.id!! ,
213+ solutionSaved.id!! ,
214+ " NewRunner" ,
215+ mutableListOf (datasetSaved.id!! ),
216+ parametersValues =
217+ mutableListOf (
218+ RunnerRunTemplateParameterValue (
219+ parameterId = " param1" , value = " 7" , varType = " ignored_var_type" )))
220+ val newRunnerSaved =
221+ runnerApiService.createRunner(organizationSaved.id!! , workspaceSaved.id!! , newRunner)
222+
223+ assertNotNull(newRunnerSaved.parametersValues)
224+ assertTrue(newRunnerSaved.parametersValues!! .size == 1 )
225+ assertEquals(" param1" , newRunnerSaved.parametersValues!! [0 ].parameterId)
226+ assertEquals(" 7" , newRunnerSaved.parametersValues!! [0 ].value)
227+ assertEquals(" integer" , newRunnerSaved.parametersValues!! [0 ].varType)
228+ }
229+
230+ @Test
231+ fun `test updateRunner and check parameterValues data` () {
232+
233+ logger.info(
234+ " should create a new Runner and retrieve parameter varType from solution ignoring the one declared" )
235+ val creationParameterValue =
236+ RunnerRunTemplateParameterValue (
237+ parameterId = " param1" , value = " 7" , varType = " ignored_var_type" )
238+ val newRunner =
239+ makeRunner(
240+ organizationSaved.id!! ,
241+ workspaceSaved.id!! ,
242+ solutionSaved.id!! ,
243+ " NewRunner" ,
244+ mutableListOf (datasetSaved.id!! ),
245+ parametersValues = mutableListOf (creationParameterValue))
246+ val newRunnerSaved =
247+ runnerApiService.createRunner(organizationSaved.id!! , workspaceSaved.id!! , newRunner)
248+
249+ assertNotNull(newRunnerSaved.parametersValues)
250+ assertTrue(newRunnerSaved.parametersValues!! .size == 1 )
251+ assertEquals(creationParameterValue, newRunnerSaved.parametersValues!! [0 ])
252+
253+ val newParameterValue =
254+ RunnerRunTemplateParameterValue (
255+ parameterId = " param1" , value = " 10" , varType = " still_ignored_var_type" )
256+ val updateRunnerSaved =
257+ runnerApiService.updateRunner(
258+ organizationSaved.id!! ,
259+ workspaceSaved.id!! ,
260+ newRunnerSaved.id!! ,
261+ newRunnerSaved.apply { parametersValues = mutableListOf (newParameterValue) })
262+
263+ assertNotNull(updateRunnerSaved.parametersValues)
264+ assertTrue(updateRunnerSaved.parametersValues!! .size == 1 )
265+ assertEquals(" param1" , updateRunnerSaved.parametersValues!! [0 ].parameterId)
266+ assertEquals(" 10" , updateRunnerSaved.parametersValues!! [0 ].value)
267+ assertEquals(" integer" , updateRunnerSaved.parametersValues!! [0 ].varType)
268+ }
269+
204270 @Test
205271 fun `test CRUD operations on Runner as Platform Admin` () {
206272 every { getCurrentAccountIdentifier(any()) } returns " random_user_with_patform_admin_role"
@@ -1005,6 +1071,16 @@ class RunnerServiceIntegrationTest : CsmRedisTestBase() {
10051071 mutableListOf (
10061072 RunTemplateParameterGroup (
10071073 id = " testParameterGroups" , parameters = mutableListOf (" param1" , " param2" ))),
1074+ parameters =
1075+ mutableListOf (
1076+ RunTemplateParameter (
1077+ id = " param1" ,
1078+ maxValue = " 10" ,
1079+ minValue = " 0" ,
1080+ defaultValue = " 5" ,
1081+ varType = " integer" ),
1082+ RunTemplateParameter (id = " param2" , varType = " %DATASET%" ),
1083+ ),
10081084 runTemplates =
10091085 mutableListOf (
10101086 RunTemplate (
0 commit comments