Как определить внутризависимости внутри элементов JSON? - PullRequest
0 голосов
/ 30 июня 2018

Допустим, у меня есть следующий JSON, который определяет API:

{"contract_name": "create_user",
        "method": "POST",
        "url": "/users",
        "request_body": {
            "username": {
                "type": "email",
                "options": "None",
                "required": "true",
                "unique":"true"
            },
            "role": {
                "type": "string",
                "options": [
                    "TESTER",
                    "RA_DEVICE"
                ],
                "required": "true"
            },
            "userProfile": {
                "type": "object",
                "options": {
                    "TESTER": {
                        "firstName": {
                            "type": "string",
                            "options": "None",
                            "required": "true"
                        },
                        "lastName": {
                            "type": "string",
                            "options": "None",
                            "required": "true"
                        }
                    },
                    "RA_DEVICE": {
                        "deviceId": {
                            "type": "long",
                            "options": "None",
                            "required": "true",
                            "unique":"true"
                        }
                    }}
}

Теперь предположим, что я хочу создать тестовые случаи API из общего сценария Python (который может принимать любое определение API и генерировать для него тестовые случаи с некоторыми случайными значениями 'type' элемента).

Проблема: я хочу определить условие между 'userProfile' и 'role', чтобы значение 'userProfile' было основано на значении 'role'. то есть, если мой скрипт на python выбирает роль «RA_DEVICE», то значение
«userProfile» должен соответствовать «RA_DEVICE» в его опциях, чтобы быть случайным числом, представляющим «deviceId».

Пожалуйста, предложите способ определения отношений между 'role' и 'userProfile' с учетом того, что мой скрипт на python для генерации тестовых случаев должен быть универсальным (может генерировать тестовые случаи для любого API, имеющего внутриэлементные зависимости).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...