{
  "id": "robot",
  "name": "Robot Framework",
  "description": "Generic automation framework for acceptance testing and RPA.",
  "homepage": "https://robotframework.org",
  "executables": [
    "robot"
  ],
  "commands": {
    "format": 1,
    "label": "Run Robot Framework tests",
    "description": "Run test suites with selection, output directory and reporting options. Listeners, variable files, keyword filtering and tag statistics are left out.",
    "quality": "ai-draft",
    "base": "fig:robot",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": false,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "src",
        "kind": "completion",
        "url": "https://github.com/withfig/autocomplete/blob/master/src/robot.ts",
        "license": "MIT"
      }
    ],
    "field": [
      {
        "id": "suites",
        "label": "Test files or directories",
        "type": "path",
        "position": 0,
        "multiple": true,
        "path": {
          "kind": "any",
          "role": "input"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "outputdir",
        "label": "Output directory",
        "type": "path",
        "option": [
          "--outputdir",
          "-d"
        ],
        "path": {
          "kind": "directory",
          "role": "output"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "name",
        "label": "Top-level suite name",
        "type": "string",
        "option": [
          "--name",
          "-N"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "test",
        "label": "Select tests by name",
        "type": "string",
        "option": [
          "--test",
          "-t"
        ],
        "multiple": true,
        "sources": [
          "src"
        ]
      },
      {
        "id": "suite",
        "label": "Select suites by name",
        "type": "string",
        "option": [
          "--suite",
          "-s"
        ],
        "multiple": true,
        "sources": [
          "src"
        ]
      },
      {
        "id": "include",
        "label": "Include tag",
        "type": "string",
        "option": [
          "--include",
          "-i"
        ],
        "multiple": true,
        "sources": [
          "src"
        ]
      },
      {
        "id": "exclude",
        "label": "Exclude tag",
        "type": "string",
        "option": [
          "--exclude",
          "-e"
        ],
        "multiple": true,
        "sources": [
          "src"
        ]
      },
      {
        "id": "variable",
        "label": "Variable (name:value)",
        "type": "string",
        "option": [
          "--variable",
          "-v"
        ],
        "multiple": true,
        "sources": [
          "src"
        ]
      },
      {
        "id": "rerunfailed",
        "label": "Re-run failures from output.xml",
        "type": "path",
        "option": [
          "--rerunfailed",
          "-R"
        ],
        "path": {
          "kind": "file",
          "role": "input"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "loglevel",
        "label": "Log level",
        "type": "enum",
        "option": [
          "--loglevel",
          "-L"
        ],
        "choices": [
          {
            "value": "TRACE",
            "label": "TRACE"
          },
          {
            "value": "DEBUG",
            "label": "DEBUG"
          },
          {
            "value": "INFO",
            "label": "INFO"
          },
          {
            "value": "WARN",
            "label": "WARN"
          },
          {
            "value": "NONE",
            "label": "NONE"
          }
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "log",
        "label": "Log file",
        "type": "string",
        "option": [
          "--log",
          "-l"
        ],
        "suggestions": [
          {
            "value": "log.html",
            "label": "log.html"
          },
          {
            "value": "NONE",
            "label": "NONE"
          }
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "report",
        "label": "Report file",
        "type": "string",
        "option": [
          "--report",
          "-r"
        ],
        "suggestions": [
          {
            "value": "report.html",
            "label": "report.html"
          },
          {
            "value": "NONE",
            "label": "NONE"
          }
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "xunit",
        "label": "xUnit result file",
        "type": "string",
        "option": [
          "--xunit",
          "-x"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "rpa",
        "label": "RPA mode",
        "type": "boolean",
        "option": [
          "--rpa"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "timestampoutputs",
        "label": "Timestamp output files",
        "type": "boolean",
        "option": [
          "--timestampoutputs",
          "-T"
        ],
        "sources": [
          "src"
        ]
      }
    ],
    "task": [
      {
        "id": "run",
        "label": "Run tests",
        "fields": [
          "suites",
          "outputdir"
        ],
        "required": [
          "suites"
        ]
      },
      {
        "id": "tag",
        "label": "Run tests by tag",
        "fields": [
          "suites",
          "include",
          "exclude",
          "outputdir"
        ],
        "required": [
          "suites"
        ]
      },
      {
        "id": "rerun",
        "label": "Re-run failed tests",
        "fields": [
          "suites",
          "rerunfailed",
          "outputdir"
        ],
        "required": [
          "suites",
          "rerunfailed"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "suites",
          "outputdir",
          "test",
          "suite",
          "include",
          "exclude"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "name",
          "variable",
          "rerunfailed",
          "loglevel",
          "log",
          "report",
          "xunit",
          "rpa",
          "timestampoutputs"
        ]
      }
    ]
  }
}
