@@ -6,6 +6,7 @@ import java.nio.file.Path
66import nextflow.Session
77import nextflow.file.FileHelper
88import nextflow.exception.ScriptRuntimeException
9+ import nextflow.script.types.Bag
910import spock.lang.Specification
1011import spock.lang.Unroll
1112/**
@@ -171,24 +172,38 @@ class ParamsDslTest extends Specification {
171172 {"id": 3, "name": "sample3", "value": 300}
172173 ]
173174 ''' . stripIndent()
174- def cliParams = [samples : jsonFile. toString()]
175+ def cliParams = [
176+ samplesList : jsonFile. toString(),
177+ samplesBag : jsonFile. toString(),
178+ samplesSet : jsonFile. toString()
179+ ]
175180 def session = new Session ()
176181 session. init(null , null , cliParams, [:])
177182
178183 when :
179184 def dsl = new ParamsDsl ()
180- dsl. declare(' samples' , List , false )
185+ dsl. declare(' samplesList' , List , false )
186+ dsl. declare(' samplesBag' , Bag , false )
187+ dsl. declare(' samplesSet' , Set , false )
181188 dsl. apply(session)
182189
183190 then :
184- def samples = session. binding. getParams(). samples
185- samples instanceof List
186- samples. size() == 3
187- samples[0 ]. id == 1
188- samples[0 ]. name == ' sample1'
189- samples[0 ]. value == 100
190- samples[1 ]. id == 2
191- samples[2 ]. id == 3
191+ def samplesList = session. binding. getParams(). samplesList
192+ samplesList instanceof List
193+ samplesList. size() == 3
194+ samplesList[0 ]. id == 1
195+ samplesList[0 ]. name == ' sample1'
196+ samplesList[0 ]. value == 100
197+ samplesList[1 ]. id == 2
198+ samplesList[2 ]. id == 3
199+
200+ def samplesBag = session. binding. getParams(). samplesBag
201+ samplesBag instanceof Bag
202+ samplesBag. size() == 3
203+
204+ def samplesSet = session. binding. getParams(). samplesSet
205+ samplesSet instanceof Set
206+ samplesSet. size() == 3
192207
193208 cleanup :
194209 jsonFile?. delete()
0 commit comments