Skip to content

Commit

Permalink
test(caller): tests for *CallProviderByName funcs
Browse files Browse the repository at this point in the history
  • Loading branch information
bkrukowski committed Nov 6, 2023
1 parent fbf19c4 commit f666836
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion caller/caller_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -377,6 +377,10 @@ func (m *mockProvider) ProviderWithError() (any, error) {
return m.fnWithError()
}

func (m *mockProvider) NotProvider() (any, any) {
return nil, nil
}

func TestCallProviderByName(t *testing.T) {
t.Run("OK", func(t *testing.T) {
t.Run("#1", func(t *testing.T) {
Expand Down Expand Up @@ -416,6 +420,11 @@ func TestCallProviderByName(t *testing.T) {
assert.Equal(t, "error value", r)
assert.EqualError(t, err, "provider returned error: my error")
})
t.Run("#3", func(t *testing.T) {
r, err := caller.CallProviderByName(&mockProvider{}, "NotProvider", nil, false)
assert.Nil(t, r)
assert.EqualError(t, err, `cannot call provider (*caller_test.mockProvider)."NotProvider": second value returned by provider must implement error interface, interface {} given`)
})
})
}

Expand Down Expand Up @@ -459,10 +468,16 @@ func TestForceCallProviderByName(t *testing.T) {
return "my error value", errors.New("my error in provider")
},
}
r, err := caller.CallProviderByName(&p, "ProviderWithError", nil, false)
r, err := caller.ForceCallProviderByName(&p, "ProviderWithError", nil, false)
assert.Equal(t, "my error value", r)
assert.EqualError(t, err, "provider returned error: my error in provider")
})
t.Run("#3", func(t *testing.T) {
var p any = mockProvider{}
r, err := caller.ForceCallProviderByName(&p, "NotProvider", nil, false)
assert.Nil(t, r)
assert.EqualError(t, err, `cannot call provider (*interface {})."NotProvider": second value returned by provider must implement error interface, interface {} given`)
})
})
}

Expand Down

0 comments on commit f666836

Please sign in to comment.