(t *testing.T)
| 1680 | } |
| 1681 | |
| 1682 | func TestConstExpr_error_as_error(t *testing.T) { |
| 1683 | env := map[string]any{ |
| 1684 | "divide": func(a, b int) (int, error) { |
| 1685 | if b == 0 { |
| 1686 | return 0, divideError{"integer divide by zero"} |
| 1687 | } |
| 1688 | return a / b, nil |
| 1689 | }, |
| 1690 | } |
| 1691 | |
| 1692 | _, err := expr.Compile( |
| 1693 | `1 + divide(1, 0)`, |
| 1694 | expr.Env(env), |
| 1695 | expr.ConstExpr("divide"), |
| 1696 | ) |
| 1697 | require.Error(t, err) |
| 1698 | require.Equal(t, "integer divide by zero", err.Error()) |
| 1699 | require.IsType(t, divideError{}, err) |
| 1700 | } |
| 1701 | |
| 1702 | func TestConstExpr_error_wrong_type(t *testing.T) { |
| 1703 | env := map[string]any{ |
nothing calls this directly
no test coverage detected
searching dependent graphs…