(t *testing.T)
| 114 | } |
| 115 | |
| 116 | func TestMethodExprFinalizePreservesNoSecurityMarker(t *testing.T) { |
| 117 | root := expr.Root |
| 118 | t.Cleanup(func() { |
| 119 | expr.Root = root |
| 120 | }) |
| 121 | |
| 122 | expr.Root = &expr.RootExpr{ |
| 123 | API: &expr.APIExpr{ |
| 124 | Requirements: []*expr.SecurityExpr{{ |
| 125 | Schemes: []*expr.SchemeExpr{{ |
| 126 | Kind: expr.JWTKind, |
| 127 | SchemeName: "jwt", |
| 128 | }}, |
| 129 | }}, |
| 130 | }, |
| 131 | } |
| 132 | method := &expr.MethodExpr{ |
| 133 | Name: "Health", |
| 134 | Requirements: []*expr.SecurityExpr{{ |
| 135 | Schemes: []*expr.SchemeExpr{{Kind: expr.NoKind}}, |
| 136 | }}, |
| 137 | Service: &expr.ServiceExpr{Name: "Service"}, |
| 138 | } |
| 139 | |
| 140 | method.Finalize() |
| 141 | |
| 142 | require.True(t, expr.HasNoSecurity(method.Requirements)) |
| 143 | require.Len(t, method.Requirements, 1) |
| 144 | require.Len(t, method.Requirements[0].Schemes, 1) |
| 145 | require.Equal(t, expr.NoKind, method.Requirements[0].Schemes[0].Kind) |
| 146 | require.Nil(t, expr.EffectiveSecurityRequirements(method.Requirements)) |
| 147 | } |
| 148 | |
| 149 | func TestMethodExprError(t *testing.T) { |
| 150 | var ( |
nothing calls this directly
no test coverage detected