Francisco Barril
09/06/2023, 9:53 PMpackage events
import (
"<http://github.com/pact-foundation/pact-go/dsl|github.com/pact-foundation/pact-go/dsl>"
"systems-management/database"
"testing"
)
var cenas = func(m dsl.Message) error {
return processTrackerUpdateEvent(*m.Content.(*TrackerUpdateEvent))
}
func TestMessageConsumer_Success(t *testing.T) {
pact := dsl.Pact{
Consumer: "MyConsumer",
Provider: "MyProvider",
}
message := pact.AddMessage()
message.Given("couves").
ExpectsToReceive("assadas").
WithContent(
//TrackerUpdateEvent{
// Tracker: database.Tracker{},
// TrackerUpdateRequest: database.TrackerUpdateRequest{},
//},
map[string]interface{}{
"Tracker": database.Tracker{},
"TrackerUpdateRequest": database.TrackerUpdateRequest{},
},
).
AsType(TrackerUpdateEvent{})
pact.VerifyMessageConsumer(t, message, cenas)
}
and I am getting the error
panic: interface conversion: interface {} is map[string]interface {}, not *events.TrackerUpdateEvent [recovered]
panic: interface conversion: interface {} is map[string]interface {}, not *events.TrackerUpdateEvent
any help ? thank you 🙏Francisco Barril
09/06/2023, 9:56 PMWithContent(map[string]interface{}{
"id": like(127),
"name": "Baz",
"access": eachLike(map[string]interface{}{
"role": term("admin", "admin|controller|user"),
}, 3),
Francisco Barril
09/06/2023, 10:08 PMtype TrackerUpdateEvent struct {
Tracker database.Tracker `json:"tracker"`
TrackerUpdateRequest database.TrackerUpdateRequest `json:"update_request"`
}