summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/stretchr/objx/map_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/stretchr/objx/map_test.go')
-rw-r--r--vendor/github.com/stretchr/objx/map_test.go169
1 files changed, 97 insertions, 72 deletions
diff --git a/vendor/github.com/stretchr/objx/map_test.go b/vendor/github.com/stretchr/objx/map_test.go
index 1f8b45c61..aa8e536b8 100644
--- a/vendor/github.com/stretchr/objx/map_test.go
+++ b/vendor/github.com/stretchr/objx/map_test.go
@@ -1,147 +1,172 @@
-package objx
+package objx_test
import (
- "github.com/stretchr/testify/assert"
"testing"
+
+ "github.com/stretchr/objx"
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
)
-type Convertable struct {
- name string
+var TestMap = objx.Map{
+ "name": "Tyler",
+ "address": objx.Map{
+ "city": "Salt Lake City",
+ "state": "UT",
+ },
+ "numbers": []interface{}{"one", "two", "three", "four", "five"},
}
-func (c *Convertable) MSI() map[string]interface{} {
- return map[string]interface{}{"name": c.name}
+type Convertable struct {
+ name string
}
type Unconvertable struct {
name string
}
-func TestMapCreation(t *testing.T) {
+func (c *Convertable) MSI() map[string]interface{} {
+ return objx.Map{"name": c.name}
+}
- o := New(nil)
+func TestMapCreation(t *testing.T) {
+ o := objx.New(nil)
assert.Nil(t, o)
- o = New("Tyler")
+ o = objx.New("Tyler")
assert.Nil(t, o)
unconvertable := &Unconvertable{name: "Tyler"}
- o = New(unconvertable)
+ o = objx.New(unconvertable)
assert.Nil(t, o)
convertable := &Convertable{name: "Tyler"}
- o = New(convertable)
- if assert.NotNil(t, convertable) {
- assert.Equal(t, "Tyler", o["name"], "Tyler")
- }
+ o = objx.New(convertable)
+ require.NotNil(t, convertable)
+ assert.Equal(t, "Tyler", o["name"])
- o = MSI()
- if assert.NotNil(t, o) {
- assert.NotNil(t, o)
- }
+ o = objx.MSI()
+ assert.NotNil(t, o)
- o = MSI("name", "Tyler")
- if assert.NotNil(t, o) {
- if assert.NotNil(t, o) {
- assert.Equal(t, o["name"], "Tyler")
- }
+ o = objx.MSI("name", "Tyler")
+ require.NotNil(t, o)
+ assert.Equal(t, o["name"], "Tyler")
+
+ o = objx.MSI(1, "a")
+ assert.Nil(t, o)
+
+ o = objx.MSI("a")
+ assert.Nil(t, o)
+
+ o = objx.MSI("a", "b", "c")
+ assert.Nil(t, o)
+}
+
+func TestMapValure(t *testing.T) {
+ m := objx.Map{
+ "a": 1,
}
+ v := m.Value()
+ assert.Equal(t, m, v.ObjxMap())
}
func TestMapMustFromJSONWithError(t *testing.T) {
-
- _, err := FromJSON(`"name":"Mat"}`)
+ _, err := objx.FromJSON(`"name":"Mat"}`)
assert.Error(t, err)
-
}
func TestMapFromJSON(t *testing.T) {
+ o := objx.MustFromJSON(`{"name":"Mat"}`)
- o := MustFromJSON(`{"name":"Mat"}`)
-
- if assert.NotNil(t, o) {
- if assert.NotNil(t, o) {
- assert.Equal(t, "Mat", o["name"])
- }
- }
-
+ require.NotNil(t, o)
+ assert.Equal(t, "Mat", o["name"])
}
func TestMapFromJSONWithError(t *testing.T) {
-
- var m Map
+ var m objx.Map
assert.Panics(t, func() {
- m = MustFromJSON(`"name":"Mat"}`)
+ m = objx.MustFromJSON(`"name":"Mat"}`)
})
-
assert.Nil(t, m)
-
}
func TestMapFromBase64String(t *testing.T) {
-
base64String := "eyJuYW1lIjoiTWF0In0="
+ o, err := objx.FromBase64(base64String)
- o, err := FromBase64(base64String)
-
- if assert.NoError(t, err) {
- assert.Equal(t, o.Get("name").Str(), "Mat")
- }
-
- assert.Equal(t, MustFromBase64(base64String).Get("name").Str(), "Mat")
-
+ require.NoError(t, err)
+ assert.Equal(t, o.Get("name").Str(), "Mat")
+ assert.Equal(t, objx.MustFromBase64(base64String).Get("name").Str(), "Mat")
}
func TestMapFromBase64StringWithError(t *testing.T) {
-
base64String := "eyJuYW1lIjoiTWFasd0In0="
-
- _, err := FromBase64(base64String)
+ _, err := objx.FromBase64(base64String)
assert.Error(t, err)
-
assert.Panics(t, func() {
- MustFromBase64(base64String)
+ objx.MustFromBase64(base64String)
})
-
}
func TestMapFromSignedBase64String(t *testing.T) {
-
base64String := "eyJuYW1lIjoiTWF0In0=_67ee82916f90b2c0d68c903266e8998c9ef0c3d6"
- o, err := FromSignedBase64(base64String, "key")
-
- if assert.NoError(t, err) {
- assert.Equal(t, o.Get("name").Str(), "Mat")
- }
-
- assert.Equal(t, MustFromSignedBase64(base64String, "key").Get("name").Str(), "Mat")
+ o, err := objx.FromSignedBase64(base64String, "key")
+ require.NoError(t, err)
+ assert.Equal(t, o.Get("name").Str(), "Mat")
+ assert.Equal(t, objx.MustFromSignedBase64(base64String, "key").Get("name").Str(), "Mat")
}
func TestMapFromSignedBase64StringWithError(t *testing.T) {
-
base64String := "eyJuYW1lasdIjoiTWF0In0=_67ee82916f90b2c0d68c903266e8998c9ef0c3d6"
-
- _, err := FromSignedBase64(base64String, "key")
-
+ _, err := objx.FromSignedBase64(base64String, "key")
assert.Error(t, err)
+ assert.Panics(t, func() {
+ objx.MustFromSignedBase64(base64String, "key")
+ })
+ base64String = "eyJuYW1lasdIjoiTWF0In0=67ee82916f90b2c0d68c903266e8998c9ef0c3d6"
+ _, err = objx.FromSignedBase64(base64String, "key")
+ assert.Error(t, err)
assert.Panics(t, func() {
- MustFromSignedBase64(base64String, "key")
+ objx.MustFromSignedBase64(base64String, "key")
})
+ base64String = "eyJuYW1lIjoiTWF0In0=_67ee82916f90b2c0d68c903266e8998c9ef0c3d6_junk"
+ _, err = objx.FromSignedBase64(base64String, "key")
+ assert.Error(t, err)
+ assert.Panics(t, func() {
+ objx.MustFromSignedBase64(base64String, "key")
+ })
}
func TestMapFromURLQuery(t *testing.T) {
+ m, err := objx.FromURLQuery("name=tyler&state=UT")
- m, err := FromURLQuery("name=tyler&state=UT")
- if assert.NoError(t, err) && assert.NotNil(t, m) {
- assert.Equal(t, "tyler", m.Get("name").Str())
- assert.Equal(t, "UT", m.Get("state").Str())
- }
+ assert.NoError(t, err)
+ require.NotNil(t, m)
+ assert.Equal(t, "tyler", m.Get("name").Str())
+ assert.Equal(t, "UT", m.Get("state").Str())
+}
+
+func TestMapMustFromURLQuery(t *testing.T) {
+ m := objx.MustFromURLQuery("name=tyler&state=UT")
+ require.NotNil(t, m)
+ assert.Equal(t, "tyler", m.Get("name").Str())
+ assert.Equal(t, "UT", m.Get("state").Str())
+}
+
+func TestMapFromURLQueryWithError(t *testing.T) {
+ m, err := objx.FromURLQuery("%")
+
+ assert.Error(t, err)
+ assert.Nil(t, m)
+ assert.Panics(t, func() {
+ objx.MustFromURLQuery("%")
+ })
}