diff --git a/raml/schemas/definitions/session.json b/raml/schemas/definitions/session.json index 6d99ce3d455081b26d4c188d4380ef567f8749cf..82727290830ffcb30e739c1689d99af3b342f580 100644 --- a/raml/schemas/definitions/session.json +++ b/raml/schemas/definitions/session.json @@ -1,15 +1,17 @@ { "$schema": "http://json-schema.org/draft-04/schema#", "definitions":{ + "operator": {"type": "string"}, "project": {"type": "string"}, "project_has_template":{"type":"boolean"}, "satisfies_template":{"type":"boolean"}, "session-input":{ "type": "object", "properties": { - "public": {"$ref": "../definitions/container.json#/definitions/public"}, - "label": {"$ref": "../definitions/container.json#/definitions/label"}, - "info": {"$ref": "../definitions/container.json#/definitions/info"}, + "operator": {"$ref": "#/definitions/operator"}, + "public": {"$ref": "../definitions/container.json#/definitions/public"}, + "label": {"$ref": "../definitions/container.json#/definitions/label"}, + "info": {"$ref": "../definitions/container.json#/definitions/info"}, "archived": {"$ref":"../definitions/container.json#/definitions/archived"}, "project": {"$ref":"#/definitions/project"}, "uid": {"$ref":"../definitions/container.json#/definitions/uid"}, @@ -24,11 +26,12 @@ "session-output":{ "type": "object", "properties": { - "_id": {"$ref":"../definitions/objectid.json#"}, - "public": {"$ref": "../definitions/container.json#/definitions/public"}, - "label": {"$ref": "../definitions/container.json#/definitions/label"}, - "info": {"$ref": "../definitions/container.json#/definitions/info"}, + "_id": {"$ref":"../definitions/objectid.json#"}, + "public": {"$ref": "../definitions/container.json#/definitions/public"}, + "label": {"$ref": "../definitions/container.json#/definitions/label"}, + "info": {"$ref": "../definitions/container.json#/definitions/info"}, "archived": {"$ref":"../definitions/container.json#/definitions/archived"}, + "operator": {"$ref": "#/definitions/operator"}, "project": {"$ref":"#/definitions/project"}, "uid": {"$ref":"../definitions/container.json#/definitions/uid"}, "timestamp": {"$ref":"../definitions/container.json#/definitions/timestamp"}, diff --git a/raml/schemas/mongo/session.json b/raml/schemas/mongo/session.json index aedb2600f8dd191a85885594a0cf9f85f8b62ffc..54060e10a45563463ea131c352fa93af5a0df99d 100644 --- a/raml/schemas/mongo/session.json +++ b/raml/schemas/mongo/session.json @@ -16,7 +16,7 @@ "project_has_template": {"type": "boolean"}, "tags": {}, "info": {}, - + "operator": {}, "group": {"type": "string"}, "project": {}, "uid": {"type": "string"}, diff --git a/tests/integration_tests/python/test_containers.py b/tests/integration_tests/python/test_containers.py index 0b3a9c19725e27ba495dea7da06eeda482b6e580..8a4404fefdd0fe81bfd09e6dd533a1fda6afbaa3 100644 --- a/tests/integration_tests/python/test_containers.py +++ b/tests/integration_tests/python/test_containers.py @@ -393,6 +393,18 @@ def test_post_container(data_builder, as_admin, as_user): }) assert r.ok + # create a session w/ operator + r = as_user.post('/sessions', json={ + 'project': project, + 'label': 'test-timestamp-session', + 'operator': 'Operator' + }) + assert r.ok + session = r.json()['_id'] + r = as_user.get('/sessions/' + session) + assert r.ok + assert r.json()['operator'] == "Operator" + data_builder.delete_group(group, recursive=True)