{
  "baselineId": "freecad-1.1.1-sketcher-constraint-oracle",
  "classificationCases": [
    {
      "conflicting": [],
      "constraintTypes": [
        "Horizontal",
        "Distance"
      ],
      "degreesOfFreedom": 3,
      "driving": false,
      "expected": "reference",
      "fullyConstrained": false,
      "id": "reference-dimension",
      "inputValue": 99,
      "malformed": [],
      "measuredValue": 77.98445020149762,
      "observed": "reference",
      "partiallyRedundant": [],
      "redundant": [],
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintTypes": [
        "Distance",
        "Distance"
      ],
      "degreesOfFreedom": 3,
      "expected": "redundant",
      "fullyConstrained": false,
      "id": "redundant-dimension",
      "malformed": [],
      "observed": "redundant",
      "partiallyRedundant": [],
      "redundant": [
        2
      ],
      "solveStatus": -2,
      "values": [
        5,
        5
      ]
    },
    {
      "conflicting": [
        1,
        2
      ],
      "constraintTypes": [
        "Distance",
        "Distance"
      ],
      "degreesOfFreedom": 3,
      "expected": "conflicting",
      "fullyConstrained": false,
      "id": "conflicting-dimension",
      "malformed": [],
      "observed": "conflicting",
      "partiallyRedundant": [],
      "redundant": [],
      "solveStatus": -3,
      "values": [
        5,
        8
      ]
    }
  ],
  "failureCases": [
    {
      "addResult": null,
      "constraintType": "Coincident",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "coincident-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Horizontal",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "horizontal-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Vertical",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "vertical-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Parallel",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "parallel-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Tangent",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "tangent-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Distance",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "distance-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "DistanceX",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "distance-x-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "DistanceY",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "distance-y-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Angle",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "angle-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Perpendicular",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "perpendicular-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Radius",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "radius-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Equal",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "equal-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "PointOnObject",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "point-on-object-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Symmetric",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "symmetric-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "InternalAlignment",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "internal-alignment-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "SnellsLaw",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "snells-law-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Block",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "block-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Diameter",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "diameter-invalid-reference",
      "observed": "failure"
    },
    {
      "addResult": null,
      "constraintType": "Weight",
      "error": "Constraint has invalid indexes",
      "errorType": "IndexError",
      "expected": "failure",
      "id": "weight-invalid-reference",
      "observed": "failure"
    }
  ],
  "freecadVersion": "1.1.1",
  "gitCommit": "0108fd4b4850cc46e625b60e53cea7a7bbe69f8d",
  "revision": "14556 (Git)",
  "schemaVersion": 1,
  "status": "pass",
  "successCases": [
    {
      "conflicting": [],
      "constraintType": "Coincident",
      "constraintTypes": [
        "Coincident"
      ],
      "degreesOfFreedom": 6,
      "expected": "success",
      "fullyConstrained": false,
      "id": "coincident-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Horizontal",
      "constraintTypes": [
        "Horizontal"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "horizontal-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Vertical",
      "constraintTypes": [
        "Vertical"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "vertical-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Parallel",
      "constraintTypes": [
        "Parallel"
      ],
      "degreesOfFreedom": 7,
      "expected": "success",
      "fullyConstrained": false,
      "id": "parallel-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Tangent",
      "constraintTypes": [
        "Tangent"
      ],
      "degreesOfFreedom": 5,
      "expected": "success",
      "fullyConstrained": false,
      "id": "tangent-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": -2.220446049250313e-16,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Distance",
      "constraintTypes": [
        "Distance"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "distance-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "DistanceX",
      "constraintTypes": [
        "DistanceX"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "distance-x-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "DistanceY",
      "constraintTypes": [
        "DistanceY"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "distance-y-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Angle",
      "constraintTypes": [
        "Angle"
      ],
      "degreesOfFreedom": 3,
      "expected": "success",
      "fullyConstrained": false,
      "id": "angle-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Perpendicular",
      "constraintTypes": [
        "Perpendicular"
      ],
      "degreesOfFreedom": 7,
      "expected": "success",
      "fullyConstrained": false,
      "id": "perpendicular-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Radius",
      "constraintTypes": [
        "Radius"
      ],
      "degreesOfFreedom": 2,
      "expected": "success",
      "fullyConstrained": false,
      "id": "radius-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Equal",
      "constraintTypes": [
        "Equal"
      ],
      "degreesOfFreedom": 7,
      "expected": "success",
      "fullyConstrained": false,
      "id": "equal-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "PointOnObject",
      "constraintTypes": [
        "PointOnObject"
      ],
      "degreesOfFreedom": 5,
      "expected": "success",
      "fullyConstrained": false,
      "id": "point-on-object-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": -1.1102230246251565e-16,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Symmetric",
      "constraintTypes": [
        "Symmetric"
      ],
      "degreesOfFreedom": 4,
      "expected": "success",
      "fullyConstrained": false,
      "id": "symmetric-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 1.1102230246251565e-16,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "InternalAlignment",
      "constraintTypes": [
        "InternalAlignment",
        "InternalAlignment",
        "InternalAlignment",
        "InternalAlignment"
      ],
      "degreesOfFreedom": 5,
      "expected": "success",
      "fullyConstrained": false,
      "id": "internal-alignment-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "SnellsLaw",
      "constraintTypes": [
        "Coincident",
        "PointOnObject",
        "SnellsLaw"
      ],
      "degreesOfFreedom": 8,
      "expected": "success",
      "fullyConstrained": false,
      "id": "snells-law-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Block",
      "constraintTypes": [
        "Block"
      ],
      "degreesOfFreedom": 0,
      "expected": "success",
      "fullyConstrained": true,
      "id": "block-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Diameter",
      "constraintTypes": [
        "Diameter"
      ],
      "degreesOfFreedom": 2,
      "expected": "success",
      "fullyConstrained": false,
      "id": "diameter-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    },
    {
      "conflicting": [],
      "constraintType": "Weight",
      "constraintTypes": [
        "InternalAlignment",
        "Weight",
        "InternalAlignment",
        "InternalAlignment",
        "InternalAlignment",
        "Equal",
        "InternalAlignment",
        "InternalAlignment"
      ],
      "degreesOfFreedom": 10,
      "expected": "success",
      "fullyConstrained": false,
      "id": "weight-success",
      "malformed": [],
      "observed": "success",
      "partiallyRedundant": [],
      "redundant": [],
      "residual": 0,
      "solveStatus": 0
    }
  ],
  "summary": {
    "classificationCases": 3,
    "classificationPassed": 3,
    "constraintTypes": 19,
    "failureCases": 19,
    "failurePassed": 19,
    "successCases": 19,
    "successPassed": 19
  },
  "tolerance": 1e-7
}
