MCPcopy Create free account
hub / github.com/goadesign/goa / TestMethodExprFinalizePreservesNoSecurityMarker

Function TestMethodExprFinalizePreservesNoSecurityMarker

expr/method_test.go:116–147  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

114}
115
116func 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
149func TestMethodExprError(t *testing.T) {
150 var (

Callers

nothing calls this directly

Calls 4

FinalizeMethod · 0.95
HasNoSecurityFunction · 0.92
CleanupMethod · 0.80

Tested by

no test coverage detected