{
  "schema": "https://bars.commonsware.com/conformance/schema/render-fixture.schema.json",
  "version": "0.1.0",
  "cases": [
    {
      "name": "join-default-separator",
      "spotlight": true,
      "description": "With no argument, elements are joined with a single space.",
      "template": "{{ xs | join }}",
      "context": {
        "xs": [
          "a",
          "b",
          "c"
        ]
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "a b c"
      }
    },
    {
      "name": "join-custom-separator",
      "spotlight": true,
      "description": "The single argument is used as the separator.",
      "template": "{{ xs | join: \", \" }}",
      "context": {
        "xs": [
          "a",
          "b",
          "c"
        ]
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "a, b, c"
      }
    },
    {
      "name": "join-numbers",
      "description": "Numeric elements are rendered to their string form before joining.",
      "template": "{{ xs | join: \"-\" }}",
      "context": {
        "xs": [
          1,
          2,
          3
        ]
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "1-2-3"
      }
    },
    {
      "name": "join-empty-list",
      "description": "Joining an empty list yields an empty string.",
      "template": "{{ xs | join: \",\" }}",
      "context": {
        "xs": []
      },
      "expect": {
        "kind": "output",
        "expectedOutput": ""
      }
    },
    {
      "name": "join-non-list-is-null",
      "description": "join operates only on lists; a string input yields null.",
      "template": "{{ x | join: \",\" }}",
      "context": {
        "x": "hi"
      },
      "expect": {
        "kind": "output",
        "expectedOutput": "null"
      }
    },
    {
      "name": "join-two-args-is-error",
      "description": "More than one argument is an arity error.",
      "template": "{{ xs | join: \",\" \",\" }}",
      "context": {
        "xs": [
          "a",
          "b"
        ]
      },
      "expect": {
        "kind": "error",
        "errorCode": "KB-2002"
      }
    }
  ]
}
