You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by kv...@apache.org on 2021/05/08 07:56:23 UTC
[apisix-ingress-controller] branch master updated: fix: cookie in
exprs should remains unchanged (#425)
This is an automated email from the ASF dual-hosted git repository.
kvn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apisix-ingress-controller.git
The following commit(s) were added to refs/heads/master by this push:
new bfc5882 fix: cookie in exprs should remains unchanged (#425)
bfc5882 is described below
commit bfc5882649d057ea71aaa22fce4ccdafc675bd89
Author: kv <gx...@163.com>
AuthorDate: Sat May 8 15:56:14 2021 +0800
fix: cookie in exprs should remains unchanged (#425)
* fix: cookie in exprs should remains unchanged
---
pkg/kube/translation/apisix_route.go | 4 +---
pkg/kube/translation/apisix_route_test.go | 31 +++++++++++++++++++++----------
2 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/pkg/kube/translation/apisix_route.go b/pkg/kube/translation/apisix_route.go
index bbf8705..df5c9aa 100644
--- a/pkg/kube/translation/apisix_route.go
+++ b/pkg/kube/translation/apisix_route.go
@@ -213,9 +213,7 @@ func (t *translator) translateRouteMatchExprs(nginxVars []configv2alpha1.ApisixR
name = strings.ReplaceAll(name, "-", "_")
subj = "http_" + name
case configv2alpha1.ScopeCookie:
- name := strings.ToLower(expr.Subject.Name)
- name = strings.ReplaceAll(name, "-", "_")
- subj = "cookie_" + name
+ subj = "cookie_" + expr.Subject.Name
case configv2alpha1.ScopePath:
subj = "uri"
default:
diff --git a/pkg/kube/translation/apisix_route_test.go b/pkg/kube/translation/apisix_route_test.go
index 60baca1..24f7c43 100644
--- a/pkg/kube/translation/apisix_route_test.go
+++ b/pkg/kube/translation/apisix_route_test.go
@@ -18,21 +18,17 @@ import (
"context"
"testing"
- fakeapisix "github.com/apache/apisix-ingress-controller/pkg/kube/apisix/client/clientset/versioned/fake"
- apisixinformers "github.com/apache/apisix-ingress-controller/pkg/kube/apisix/client/informers/externalversions"
-
+ "github.com/stretchr/testify/assert"
corev1 "k8s.io/api/core/v1"
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+ "k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes/fake"
"k8s.io/client-go/tools/cache"
- "k8s.io/apimachinery/pkg/util/intstr"
-
- metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-
- "github.com/stretchr/testify/assert"
-
configv2alpha1 "github.com/apache/apisix-ingress-controller/pkg/kube/apisix/apis/config/v2alpha1"
+ fakeapisix "github.com/apache/apisix-ingress-controller/pkg/kube/apisix/client/clientset/versioned/fake"
+ apisixinformers "github.com/apache/apisix-ingress-controller/pkg/kube/apisix/client/informers/externalversions"
)
func TestRouteMatchExpr(t *testing.T) {
@@ -117,10 +113,20 @@ func TestRouteMatchExpr(t *testing.T) {
"b.com",
},
},
+ {
+ Subject: configv2alpha1.ApisixRouteHTTPMatchExprSubject{
+ Scope: configv2alpha1.ScopeCookie,
+ Name: "X-Foo",
+ },
+ Op: configv2alpha1.OpIn,
+ Set: []string{
+ "foo.com",
+ },
+ },
}
results, err := tr.translateRouteMatchExprs(exprs)
assert.Nil(t, err)
- assert.Len(t, results, 9)
+ assert.Len(t, results, 10)
assert.Len(t, results[0], 3)
assert.Equal(t, results[0][0].StrVal, "http_content_type")
@@ -168,6 +174,11 @@ func TestRouteMatchExpr(t *testing.T) {
assert.Equal(t, results[8][0].StrVal, "cookie_domain")
assert.Equal(t, results[8][1].StrVal, "in")
assert.Equal(t, results[8][2].SliceVal, []string{"a.com", "b.com"})
+
+ assert.Len(t, results[9], 3)
+ assert.Equal(t, results[9][0].StrVal, "cookie_X-Foo")
+ assert.Equal(t, results[9][1].StrVal, "in")
+ assert.Equal(t, results[9][2].SliceVal, []string{"foo.com"})
}
func TestTranslateApisixRouteV2alpha1WithDuplicatedName(t *testing.T) {