#
# Schema to validate a YAML file describing a Zephyr test platform
#
# We load this with pykwalify
# (http://pykwalify.readthedocs.io/en/unstable/validation-rules.html),
# a YAML structure validator, to validate the YAML files that describe
# Zephyr test platforms
#
# The original spec comes from Zephyr's sanitycheck script
#

type: map
mapping:
  "identifier":
    type: str
  "name":
    type: str
  "type":
    type: str
    enum: [ 'mcu', 'qemu', 'sim', 'unit', 'native']
  "simulation":
    type: str
    enum: [ 'qemu', 'simics', 'xt-sim', 'renode', 'nsim']
  "arch":
    type: str
  "toolchain":
    type: seq
    seq:
      -
        type: str
  "ram":
    type: int
  "flash":
    type: int
  "sanitycheck":
    type: bool
  "supported":
    type: seq
    seq:
      -
        type: str
  "testing":
    type: map
    mapping:
      "default":
        type: bool
      "ignore_tags":
        type: seq
        seq:
          -
            type: str
