{ "keys": ["ctrl+b"], "command": "repl_open",
"caption": "Python - RUN current file",
"id": "repl_python_run",
"mnemonic": "d",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["python3", "-u", "$file_basename"],
"cwd": "$file_path",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
}
[object Object]
, дефолтное строковое представление объектов. Если первый аргумент, переданный в JSON.parse, не является строкой, он будет в строку преобразован. Вы пытаетесь распарсить объект. Нет необходимости использовать JSON.parse, всё уже как надо. var jsonBody = JSON.parse(responseBody);
console.log(jsonBody.data)
var jsonData = JSON.parse(jsonBody.data)
console.log(jsonData.userId)
pm.test("userId from env is equal to userId from response", function () {
pm.expect(parseInt(pm.environment.get("userId"))).to.equal(
jsonData.userId
);
});
//2nd way to get object from array
function findByName(jsonData) {
for(let item of jsonData) {
if(item.title == pm.collectionVariables.get("schoolTitle")) {
return item;
}
}
}
console.log(findByName(jsonData));
var itemData = findByName(jsonData);
pm.environment.set("2ndId", itemData.id);
//2nd way to get object Index from array
function findObjectIndex(jsonData) {
for(const [index, item] of jsonData.entries()) {
if(item.title == pm.collectionVariables.get("schoolTitle")) {
return index;
}
}
}
console.log(findObjectIndex(jsonData));
var itemIndex = findObjectIndex(jsonData);
pm.environment.set("Index", itemIndex);