diff --git a/scripts/Inelastic/Direct/RunDescriptor.py b/scripts/Inelastic/Direct/RunDescriptor.py index 21b945747c38..b3b30a06a1ff 100644 --- a/scripts/Inelastic/Direct/RunDescriptor.py +++ b/scripts/Inelastic/Direct/RunDescriptor.py @@ -456,7 +456,8 @@ def __set__(self,instance,value): self._set_run_list(instance,run_num,file_path,fext) else: self._set_single_run(instance,run_num,file_path,fext) - elif isinstance(value,list): + elif isinstance(value, collections.Iterable): # xrange provided + value = list(value) self._set_run_list(instance,value,"",None) else: self._set_single_run(instance,value,"",None) diff --git a/scripts/test/RunDescriptorTest.py b/scripts/test/RunDescriptorTest.py index 80f4449d1931..7c1cf446650a 100644 --- a/scripts/test/RunDescriptorTest.py +++ b/scripts/test/RunDescriptorTest.py @@ -380,6 +380,12 @@ def test_get_run_list(self): run_list = PropertyManager.sample_run.get_run_list() self.assertEqual(len(run_list),1) + # check if run list can be set up using range + propman.sample_run = range(1,4) + run_list = PropertyManager.sample_run.get_run_list() + self.assertEqual(len(run_list),3) + self.assertTrue(isinstance(run_list,list)) + def test_sum_runs(self): propman = self.prop_man propman.sample_run = [11001,11001]