di: minor

This commit is contained in:
Gerasimos (Makis) Maropoulos 2021-03-02 20:53:05 +02:00
parent c1b31ab102
commit fa81c596df
No known key found for this signature in database
GPG Key ID: A771A828097B36C7
3 changed files with 17 additions and 2 deletions

View File

@ -77,6 +77,11 @@ func TestDependency(t *testing.T) {
}, },
Expected: false, Expected: false,
}, },
{
Dependency: map[string]string{"test": "value"},
Expected: map[string]string{"test": "value"},
},
} }
testDependencies(t, tests) testDependencies(t, tests)

View File

@ -204,12 +204,15 @@ type testMessage struct {
Body string Body string
} }
type myMap map[string]*testMessage
func TestDependentDependencies(t *testing.T) { func TestDependentDependencies(t *testing.T) {
b := New() b := New()
b.Register(&testServiceImpl{prefix: "prefix:"}) b.Register(&testServiceImpl{prefix: "prefix:"})
b.Register(func(service testService) testMessage { b.Register(func(service testService) testMessage {
return testMessage{Body: service.Say("it is a deep") + " dependency"} return testMessage{Body: service.Say("it is a deep") + " dependency"}
}) })
b.Register(myMap{"test": &testMessage{Body: "value"}})
var ( var (
h1 = b.Handler(func(msg testMessage) string { h1 = b.Handler(func(msg testMessage) string {
return msg.Body return msg.Body
@ -217,15 +220,20 @@ func TestDependentDependencies(t *testing.T) {
h2 = b.Handler(func(reuse testService) string { h2 = b.Handler(func(reuse testService) string {
return reuse.Say("message") return reuse.Say("message")
}) })
h3 = b.Handler(func(m myMap) string {
return m["test"].Body
})
) )
app := iris.New() app := iris.New()
app.Get("/h1", h1) app.Get("/h1", h1)
app.Get("/h2", h2) app.Get("/h2", h2)
app.Get("/h3", h3)
e := httptest.New(t, app) e := httptest.New(t, app)
e.GET("/h1").Expect().Status(httptest.StatusOK).Body().Equal("prefix: it is a deep dependency") e.GET("/h1").Expect().Status(httptest.StatusOK).Body().Equal("prefix: it is a deep dependency")
e.GET("/h2").Expect().Status(httptest.StatusOK).Body().Equal("prefix: message") e.GET("/h2").Expect().Status(httptest.StatusOK).Body().Equal("prefix: message")
e.GET("/h3").Expect().Status(httptest.StatusOK).Body().Equal("value")
} }
func TestHandlerPathParams(t *testing.T) { func TestHandlerPathParams(t *testing.T) {

View File

@ -231,8 +231,10 @@ func isZero(v reflect.Value) bool {
return len(v.Interface().(net.IP)) == 0 return len(v.Interface().(net.IP)) == 0
} }
zero := reflect.Zero(v.Type()) // zero := reflect.Zero(v.Type())
return v.Interface() == zero.Interface() // return v.Interface() == zero.Interface()
return v.IsZero()
} }
// IsNil same as `reflect.IsNil` but a bit safer to use, returns false if not a correct type. // IsNil same as `reflect.IsNil` but a bit safer to use, returns false if not a correct type.