summaryrefslogtreecommitdiff
path: root/tests/plugins/http/attributes_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'tests/plugins/http/attributes_test.go')
-rw-r--r--tests/plugins/http/attributes_test.go78
1 files changed, 78 insertions, 0 deletions
diff --git a/tests/plugins/http/attributes_test.go b/tests/plugins/http/attributes_test.go
new file mode 100644
index 00000000..69200a30
--- /dev/null
+++ b/tests/plugins/http/attributes_test.go
@@ -0,0 +1,78 @@
+package http
+
+import (
+ "net/http"
+ "testing"
+
+ "github.com/spiral/roadrunner/v2/plugins/http/attributes"
+ "github.com/stretchr/testify/assert"
+)
+
+func TestAllAttributes(t *testing.T) {
+ r := &http.Request{}
+ r = attributes.Init(r)
+
+ err := attributes.Set(r, "key", "value")
+ if err != nil {
+ t.Errorf("error during the Set: error %v", err)
+ }
+
+ assert.Equal(t, attributes.All(r), map[string]interface{}{
+ "key": "value",
+ })
+}
+
+func TestAllAttributesNone(t *testing.T) {
+ r := &http.Request{}
+ r = attributes.Init(r)
+
+ assert.Equal(t, attributes.All(r), map[string]interface{}{})
+}
+
+func TestAllAttributesNone2(t *testing.T) {
+ r := &http.Request{}
+
+ assert.Equal(t, attributes.All(r), map[string]interface{}{})
+}
+
+func TestGetAttribute(t *testing.T) {
+ r := &http.Request{}
+ r = attributes.Init(r)
+
+ err := attributes.Set(r, "key", "value")
+ if err != nil {
+ t.Errorf("error during the Set: error %v", err)
+ }
+ assert.Equal(t, attributes.Get(r, "key"), "value")
+}
+
+func TestGetAttributeNone(t *testing.T) {
+ r := &http.Request{}
+ r = attributes.Init(r)
+
+ assert.Equal(t, attributes.Get(r, "key"), nil)
+}
+
+func TestGetAttributeNone2(t *testing.T) {
+ r := &http.Request{}
+
+ assert.Equal(t, attributes.Get(r, "key"), nil)
+}
+
+func TestSetAttribute(t *testing.T) {
+ r := &http.Request{}
+ r = attributes.Init(r)
+
+ err := attributes.Set(r, "key", "value")
+ if err != nil {
+ t.Errorf("error during the Set: error %v", err)
+ }
+ assert.Equal(t, attributes.Get(r, "key"), "value")
+}
+
+func TestSetAttributeNone(t *testing.T) {
+ r := &http.Request{}
+ err := attributes.Set(r, "key", "value")
+ assert.Error(t, err)
+ assert.Equal(t, attributes.Get(r, "key"), nil)
+}