[
  {
    "id": "small-report",
    "name": "A 45.50 report is reimbursed without review",
    "inputs": {
      "managerId": "m.lee",
      "expenses": [
        {
          "amount": 30
        },
        {
          "amount": 15.5
        }
      ]
    },
    "mocks": {
      "payment-reimburse": {
        "outputs": {
          "paymentId": "PAY-1"
        }
      }
    },
    "expect": {
      "path": [
        "total-expenses",
        "needs-review",
        "reimburse",
        "reimbursed"
      ],
      "variables": {
        "total": 45.5,
        "paymentId": "PAY-1"
      }
    }
  },
  {
    "id": "manager-approves",
    "name": "A 640 report is approved by the manager",
    "inputs": {
      "managerId": "m.lee",
      "expenses": [
        {
          "amount": 520
        },
        {
          "amount": 120
        }
      ]
    },
    "mocks": {
      "userTask": {
        "outputs": {
          "approved": true
        }
      },
      "payment-reimburse": {
        "outputs": {
          "paymentId": "PAY-2"
        }
      }
    },
    "expect": {
      "path": [
        "manager-review",
        "decision",
        "reimburse",
        "reimbursed"
      ]
    }
  },
  {
    "id": "manager-rejects",
    "name": "A rejected report goes back to the employee",
    "inputs": {
      "managerId": "m.lee",
      "expenses": [
        {
          "amount": 900
        }
      ]
    },
    "mocks": {
      "userTask": {
        "outputs": {
          "approved": false
        }
      },
      "employee-notify": {}
    },
    "expect": {
      "path": [
        "manager-review",
        "return-report",
        "report-rejected"
      ]
    }
  }
]
