Viktoriia Vlasiuk
01/13/2023, 9:13 AM"contentType": "application/json",
"encoded": false
why does pact add them if we have header content-type?..Matt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
01/14/2023, 1:41 PMfunc (s *PicklistSuite) TestClosePicklist() {
//contract description
var retailer, env, code, token = "", "", "bbe797fd-b557-4549-9a5e-913a0d14b936", "token"
mockProvider.AddInteraction().
Given(fmt.Sprintf("picklist with code '%s' exists", code)).
UponReceiving(fmt.Sprintf("a request to close picklist by code '%s'", code)).
WithRequest(http.MethodPost, fmt.Sprintf("/v3/picklists/%s/close", code), func(b *consumer.V4RequestBuilder) {
b.Header("X-Token", matchers.S(token))
}).
WillRespondWith(http.StatusOK, func(b *consumer.V4ResponseBuilder) {
b.
Header("Content-Type", matchers.S("application/json")).
JSONBody(matchers.MapMatcher{
"code": matchers.S(code),
"closed-at": matchers.Timestamp(),
})
},
)
// define test
err := mockProvider.ExecuteTest(s.T(), func(config consumer.MockServerConfig) error {
isps.URLFormat = fmt.Sprintf("<http://localhost>:%d/v3/", config.Port)
isps.URLFormat = isps.URLFormat + "%s" + "%s"
ctx := context.Background()
params := isps.ClosePicklistReqParams{
Retailer: retailer,
Env: env,
Token: token,
PicklistCode: code,
}
// execute function
response, err := app.inStorePickingService.ClosePicklist(ctx, params)
s.NoError(err)
s.NotNil(response)
s.Equal(code, response.Code)
s.NotNil(response.ClosedAt)
return nil
})
s.Require().NoError(err)
}
Matt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
01/16/2023, 8:36 AMmockProvider, err = consumer.NewV4Pact(consumer.MockHTTPProviderConfig{
Consumer: "outboundbff-picklist",
Provider: "isps",
PactDir: "../common/services/pacts",
})
btw didn't manage to setup logs... in prev version during pact init I specified LogDir...Viktoriia Vlasiuk
01/16/2023, 8:36 AMViktoriia Vlasiuk
01/16/2023, 8:37 AMViktoriia Vlasiuk
01/16/2023, 8:38 AMViktoriia Vlasiuk
01/18/2023, 10:40 AM"contentType": "application/json",
"encoded": false
appears only in V4 where we have body containing "content" and "contentType". Maybe pactflow should ignore contentType and encoded during pact and provide specification comparison.Matt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
01/23/2023, 7:03 AMViktoriia Vlasiuk
02/17/2023, 10:59 AMMatt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
02/17/2023, 11:49 AMViktoriia Vlasiuk
02/17/2023, 11:50 AMMatt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
02/17/2023, 11:51 AMMatt (pactflow.io / pact-js / pact-go)
Viktoriia Vlasiuk
02/17/2023, 11:52 AMViktoriia Vlasiuk
02/17/2023, 11:53 AM