{
  "schema": "https://bars.commonsware.com/conformance/schema/render-fixture.schema.json",
  "version": "0.1.0",
  "cases": [
    {
      "name": "strip-leading-and-trailing",
      "spotlight": true,
      "description": "Both ends are trimmed; interior whitespace is preserved.",
      "template": "[{{ phrase | strip }}]",
      "context": {
        "phrase": "  hello  world   "
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "[hello  world]"
      }
    },
    {
      "name": "strip-only-whitespace",
      "description": "An all-whitespace string becomes empty.",
      "template": "[{{ phrase | strip }}]",
      "context": {
        "phrase": "    "
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "[]"
      }
    },
    {
      "name": "strip-empty-string",
      "description": "Empty input stays empty.",
      "template": "[{{ phrase | strip }}]",
      "context": {
        "phrase": ""
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "[]"
      }
    },
    {
      "name": "strip-tabs-and-newlines",
      "description": "Tabs and newlines on both ends are removed.",
      "template": "[{{ phrase | strip }}]",
      "context": {
        "phrase": "\t\n hello \n\t"
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "[hello]"
      }
    },
    {
      "name": "strip-with-arg-is-error",
      "description": "Any argument is an arity error.",
      "template": "{{ phrase | strip: \"x\" }}",
      "context": {
        "phrase": "hi"
      },
      "expect": {
        "kind": "error",
        "errorCode": "KB-2002"
      }
    },
    {
      "name": "strip-chained-into-upcase",
      "spotlight": true,
      "description": "Composes downstream.",
      "template": "[{{ phrase | strip | upcase }}]",
      "context": {
        "phrase": "  hello   "
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "[HELLO]"
      }
    }
  ]
}
