diff --git a/arkindex/dataimport/serializers/workers.py b/arkindex/dataimport/serializers/workers.py index 347741aac982405d02ecf190a3abe346c8b4085e..f0a2c76396b4f7d20a9d34f8b92bbef7983bc2f3 100644 --- a/arkindex/dataimport/serializers/workers.py +++ b/arkindex/dataimport/serializers/workers.py @@ -110,8 +110,8 @@ class UserConfigurationFieldSerializer(serializers.Serializer): if subtype is not None: if field_type != UserConfigurationFieldType.List: errors['subtype'].append('The "subtype" field can only be set for a "list" type property.') - if subtype not in [UserConfigurationFieldType.Int, UserConfigurationFieldType.Float, UserConfigurationFieldType.String]: - errors['subtype'].append('Subtype can only be int, float or string.') + if subtype not in [UserConfigurationFieldType.Int, UserConfigurationFieldType.Float, UserConfigurationFieldType.String, UserConfigurationFieldType.Boolean]: + errors['subtype'].append('Subtype can only be int, float, bool or string.') # Handle enums if choices is not None: if field_type != UserConfigurationFieldType.Enum: diff --git a/arkindex/dataimport/tests/test_workers.py b/arkindex/dataimport/tests/test_workers.py index 21e4e53eb4f3dd9d0baf25ce766b37eb5bffd842..50e1b043f8e5572b8141187a695ae3773477f0d1 100644 --- a/arkindex/dataimport/tests/test_workers.py +++ b/arkindex/dataimport/tests/test_workers.py @@ -842,6 +842,7 @@ class TestWorkersWorkerVersions(FixtureAPITestCase): "configuration": { "user_configuration": { "demo_list": {"title": "Demo List", "type": "list", "required": True, "subtype": "int", "default": [1, 2, 3, 4]}, + "boolean_list": {"title": "It's a list of booleans", "type": "list", "required": False, "subtype": "bool", "default": [True, False, False]} } }, "gpu_usage": "disabled", @@ -857,6 +858,13 @@ class TestWorkersWorkerVersions(FixtureAPITestCase): "subtype": "int", "required": True, "default": [1, 2, 3, 4] + }, + "boolean_list": { + "title": "It's a list of booleans", + "type": "list", + "subtype": "bool", + "required": False, + "default": [True, False, False] } } }) @@ -934,7 +942,7 @@ class TestWorkersWorkerVersions(FixtureAPITestCase): "configuration": { "user_configuration": [{ "demo_list": { - "subtype": ["Subtype can only be int, float or string."] + "subtype": ["Subtype can only be int, float, bool or string."] } }] }