---
id: testcase.json
"$schema": "http://json-schema.org/draft-04/schema"
title: Testcase
description: "A single test case"
type: object
properties:
  name:
    type: string
    description: 'Name of this testcase/scenario'
  assertion:
    type: string
    description: 'Description of what this testcase asserts'
  inputs: # TODO: allow a list
    type: object
    description: 'The inputs send to the fixture input ports'
  expect: # TODO: allow a list
    type: object
    items:
      oneOf:
        - "$ref": "expectation.json"
        - "$ref": "expectations.json"
    description: |
      Expected data on fixture output ports.
      One message is expected per mentioned port.
  timeout:
    type: number
    description: 'Timeout (in milliseconds). Overrides that set in the suite'
    default: 2000
  skip:
    type: string
    description: |
      Flag to skip testcase.
      Should be a description of the reason for skipping.

required: [name, assertion, inputs, expect]
