{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "id": "https://xunit.net/schema/v1/xunit.runner.schema.json",
  "title": "xUnit.net Runner Configuration",
  "description": "Configuration file for unit test projects using xUnit.net",
  "type": "object",
  "properties": {
    "$schema": {
      "description": "The document schema",
      "default": "https://xunit.net/schema/v1/xunit.runner.schema.json",
      "type": "string"
    },
    "diagnosticMessages": {
      "description": "Enables or disables diagnostic information during test discovery and execution.",
      "default": false,
      "type": "boolean"
    },
    "maxParallelThreads": {
      "description": "Configures the maximum number of threads to be used when parallelizing tests within this assembly.",
      "type": "integer",
      "minimum": 1
    },
    "methodDisplay": {
      "description": "Configures the default display name for test cases. If you choose 'method', the display name will be just the method (without the class name); if you choose 'classAndMethod', the default display name will be the fully qualified class name and method name.",
      "default": "classAndMethod",
      "enum": [
        "method",
        "classAndMethod"
      ]
    },
    "parallelizeAssembly": {
      "description": "Instructs the test runner that this assembly is willing to run in parallel with other assemblies.",
      "default": false,
      "type": "boolean"
    },
    "parallelizeTestCollections": {
      "description": "Enables or disables tests inside this assembly from running in parallel against each other. Tests in the same test collection will be run sequentially against each other, but tests in different test collections will be run in parallel against each other.",
      "default": true,
      "type": "boolean"
    },
    "preEnumerateTheories": {
      "description": "Enables or disables pre-enumerate of theories so that there is an individual test case for each theory data row. Set this to 'false' to return a single test case for each theory without pre-enumerating the data ahead of time.",
      "default": true,
      "type": "boolean"
    },
    "useAppDomain": {
      "description": "Enables or disables the use of an app domain to discover and run tests. Defaults to 'true'. Note that not all runners support app domains, so this flag may be ignored.",
      "default": true,
      "type": "boolean"
    }
  },
  "additionalProperties": false
}
