mirror of
https://github.com/usebruno/bruno.git
synced 2025-02-22 04:31:35 +01:00
fix: updates
This commit is contained in:
parent
482cb05d63
commit
4b4bd3bc95
@ -164,44 +164,22 @@ const mergeScripts = (collection, request, requestTreePath, scriptFlow) => {
|
||||
}
|
||||
};
|
||||
|
||||
const findItemInCollection = (collection, itemId) => {
|
||||
let item = null;
|
||||
|
||||
if (collection.uid === itemId) {
|
||||
return collection;
|
||||
}
|
||||
|
||||
if (collection.items && collection.items.length) {
|
||||
collection.items.forEach((item) => {
|
||||
if (item.uid === itemId) {
|
||||
item = item;
|
||||
} else if (item.type === 'folder') {
|
||||
item = findItemInCollection(item, itemId);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return item;
|
||||
const findItem = (items = [], pathname) => {
|
||||
return find(items, (i) => i.pathname === pathname);
|
||||
};
|
||||
|
||||
const findItemInCollectionByPath = (collection, pathname) => {
|
||||
let item = null;
|
||||
const findItemInCollection = (collection, pathname) => {
|
||||
let flattenedItems = flattenItems(collection.items);
|
||||
|
||||
if (collection.pathname === pathname) {
|
||||
return collection;
|
||||
}
|
||||
return findItem(flattenedItems, pathname);
|
||||
};
|
||||
|
||||
if (collection.items && collection.items.length) {
|
||||
collection.items.forEach((_item) => {
|
||||
if (_item.pathname === pathname) {
|
||||
item = _item;
|
||||
} else if (_item.type === 'folder') {
|
||||
item = findItemInCollectionByPath(_item, pathname);
|
||||
}
|
||||
});
|
||||
}
|
||||
const findParentItemInCollection = (collection, pathname) => {
|
||||
let flattenedItems = flattenItems(collection.items);
|
||||
|
||||
return item;
|
||||
return find(flattenedItems, (item) => {
|
||||
return item.items && find(item.items, (i) => i.pathname === pathname);
|
||||
});
|
||||
};
|
||||
|
||||
const flattenItems = (items = []) => {
|
||||
@ -222,22 +200,13 @@ const flattenItems = (items = []) => {
|
||||
return flattenedItems;
|
||||
};
|
||||
|
||||
const findParentItemInCollectionByPath = (collection, pathname) => {
|
||||
let flattenedItems = flattenItems(collection.items);
|
||||
|
||||
return find(flattenedItems, (item) => {
|
||||
return item.items && find(item.items, (i) => i.pathname === pathname);
|
||||
});
|
||||
};
|
||||
|
||||
const getTreePathFromCollectionToItem = (collection, _item) => {
|
||||
let path = [];
|
||||
let item = findItemInCollectionByPath(collection, _item.pathname);
|
||||
let item = findItemInCollection(collection, _item.pathname);
|
||||
while (item) {
|
||||
path.unshift(item);
|
||||
item = findParentItemInCollectionByPath(collection, item.pathname);
|
||||
item = findParentItemInCollection(collection, item.pathname);
|
||||
}
|
||||
|
||||
return path;
|
||||
};
|
||||
|
||||
|
@ -43,10 +43,9 @@ const runSingleRequest = async function (
|
||||
let request;
|
||||
let nextRequestName;
|
||||
let item = {
|
||||
pathname: `${collectionPath}/${filename}`,
|
||||
pathname: path.join(collectionPath, filename),
|
||||
...bruJson
|
||||
}
|
||||
|
||||
request = prepareRequest(item, collection);
|
||||
|
||||
request.__bruno__executionMode = 'cli';
|
||||
|
@ -14,6 +14,7 @@ auth:bearer {
|
||||
vars:pre-request {
|
||||
collection_pre_var: collection_pre_var_value
|
||||
collection_pre_var_token: {{request_pre_var_token}}
|
||||
collection-var: collection-var-value
|
||||
}
|
||||
|
||||
docs {
|
||||
|
@ -0,0 +1,7 @@
|
||||
meta {
|
||||
name: bru
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
folder-var: folder-var-value
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
meta {
|
||||
name: getCollectionVar
|
||||
type: http
|
||||
seq: 9
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{host}}/ping
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
tests {
|
||||
test("should get collection var in scripts", function() {
|
||||
const testVar = bru.getCollectionVar("collection-var");
|
||||
expect(testVar).to.equal("collection-var-value");
|
||||
});
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
meta {
|
||||
name: getFolderVar
|
||||
type: http
|
||||
seq: 8
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{host}}/ping
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
tests {
|
||||
test("should get folder var in scripts", function() {
|
||||
const testVar = bru.getFolderVar("folder-var");
|
||||
expect(testVar).to.equal("folder-var-value");
|
||||
});
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
meta {
|
||||
name: getRequestVar
|
||||
type: http
|
||||
seq: 7
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{host}}/ping
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
request-var: request-var-value
|
||||
}
|
||||
|
||||
tests {
|
||||
test("should get request var in scripts", function() {
|
||||
const testVar = bru.getRequestVar("request-var");
|
||||
expect(testVar).to.equal("request-var-value");
|
||||
});
|
||||
}
|
Loading…
Reference in New Issue
Block a user