TestMace
0.0.1-beta.24
Search
K

Folder

It is used to group other nodes and can be a child of Project and Folder nodes. This is how it looks like in the project tree:
A Folder node in the project tree
Here are the actions available for this node type in the project tree:
A Folder node context menu
  • Add node. Ckick on it to add a child node. You can choose a node type in the submenu.
  • Rename. Change the node name.
  • Duplicate. Make a copy of the node. The new node will be named NodeName [Copy [number]].
  • Remove node. Use it to delete the node.
  • Run. Run the node.
  • Share. Share the node. Note that the link with information about the node will be created in the clipboard.
  • Show in explorer. Open the folder with the node in the file manager.
You can open the node with a double-click on it in the project tree. A Folder node tab looks like this:
A Folder node tab
In the screenshot you can see the following parts of the tab:
  1. 1.
    The Run button to run the nodes under the Folder node.
  2. 2.
    The control panel
  3. 3.
    The Headers button to specify inheritable HTTP headers.
  4. 4.
    The button to open the variables dialog.
  5. 5.
    Child nodes area
  6. 6.
    Checks if the node has a valid SSL certificate. It is used as an inherited parameter in RequestStep nodes.
  7. 7.
    Authorization.
Let's describe these parts in detail.

Control Panel

The Run button function is described above. It's worth mentioning that when running a node the button looks different:
The Run button after running a node
You can stop the node by clicking Abort.
The Headers button allows to specify inheritable HTTP headers.
Variables editing is shown in the Custom variables section.

File Representation

A Folder node is a folder with the node name, containing the index.yml file with the following format:
{
"type": "object",
"properties": {
"type": {
"description": "Type of Folder node",
"const": "Folder",
"type": "string"
},
"authData": {
"$ref": "#/definitions/IAuthorizationData",
"description": "Authorization parameters"
},
"requestData": {
"$ref": "#/definitions/IRequestParametersData",
"description": "Request parameters"
},
"children": {
"description": "List of children names",
"type": "array",
"items": {
"type": "string"
},
"default": []
},
"variables": {
"$ref": "#/definitions/NodeVariables",
"description": "Node variables dictionary"
},
"name": {
"description": "Node name",
"type": "string"
}
},
"required": [
"authData",
"children",
"name",
"requestData",
"type",
"variables"
],
"definitions": {
"IAuthorizationData": {
"type": "object",
"properties": {
"type": {
"type": "string"
}
},
"required": [
"type"
]
},
"IRequestParametersData": {
"type": "object",
"properties": {
"headers": {
"description": "Headers",
"type": "array",
"items": {
"$ref": "#/definitions/NameValueParam"
}
},
"disabledInheritedHeaders": {
"description": "Names of disabled headers",
"type": "array",
"items": {
"type": "string"
}
},
"strictSSL": {
"$ref": "#/definitions/StrictSSLOptions",
"description": "Requires SSL certificates be valid"
}
},
"required": [
"disabledInheritedHeaders",
"headers",
"strictSSL"
]
},
"NameValueParam": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"isChecked": {
"type": "boolean"
}
},
"required": [
"name",
"value"
]
},
"StrictSSLOptions": {
"enum": [
"Inherit",
"No",
"Yes"
],
"type": "string"
},
"NodeVariables": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}