Phongthorn
02/23/2022, 11:10 AM<class:CGIHandler>': incompatible character encodings: ASCII-8BIT and UTF-8 (Encoding::CompatibilityError)
JS: https://github.com/pact-foundation/pact-workshop-js
Anyone please help me to fix this 🙂Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Phongthorn
02/23/2022, 11:23 AMPhongthorn
02/23/2022, 11:24 AMPhongthorn
02/23/2022, 11:25 AMMatt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Phongthorn
02/23/2022, 11:26 AMPhongthorn
02/23/2022, 11:28 AMPhongthorn
02/23/2022, 11:28 AMPhongthorn
02/23/2022, 11:29 AMMatt (pactflow.io / pact-js / pact-go)
Phongthorn
02/23/2022, 11:32 AMPhongthorn
02/23/2022, 11:33 AMMatt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Phongthorn
02/23/2022, 11:34 AMPhongthorn
02/23/2022, 11:36 AMPhongthorn
02/23/2022, 11:41 AMYousaf Nabi (pactflow.io)
echo $LANG
on your machine?Yousaf Nabi (pactflow.io)
en_GB.UTF-8
Boris
02/24/2022, 12:15 AMen_AU.UTF-8
, and I've had weird problems in WSL with unsupported locales. Definitely good to check 👌Phongthorn
02/24/2022, 5:44 AMen_US.UTF-8
@Yousaf Nabi (pactflow.io)Phongthorn
02/24/2022, 5:46 AMPhongthorn
02/24/2022, 5:49 AMgo test -tags=integration -count=1 <http://github.com/pact-foundation/pact-workshop-go/consumer/client|github.com/pact-foundation/pact-workshop-go/consumer/client> -run 'TestClientPact'
2022/02/24 12:46:45 [INFO] checking pact-mock-service within range >= 3.5.0, < 4.0.0
2022/02/24 12:46:45 [INFO] checking pact-provider-verifier within range >= 1.31.0, < 2.0.0
2022/02/24 12:46:45 [INFO] checking pact-broker within range >= 1.22.3
2022/02/24 12:46:46 [ERROR] service: /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet/cgihandler.rb:21:in `<class:CGIHandler>': incompatible character encodings: ASCII-8BIT and UTF-8 (Encoding::CompatibilityError)
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet/cgihandler.rb:19:in `<module:HTTPServlet>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet/cgihandler.rb:17:in `<module:WEBrick>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet/cgihandler.rb:16:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet.rb:13:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet.rb:13:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpserver.rb:16:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpserver.rb:16:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick.rb:225:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick.rb:225:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/ssl.rb:8:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/ssl.rb:8:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/https.rb:11:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/https.rb:11:in `<top (required)>'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/pact-mock_service-3.9.0/lib/pact/mock_service/cli.rb:173:in `require'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/pact-mock_service-3.9.0/lib/pact/mock_service/cli.rb:173:in `require_common_dependencies'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/pact-mock_service-3.9.0/lib/pact/mock_service/cli.rb:30:in `service'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/thor-1.2.1/lib/thor/base.rb:485:in `start'
2022/02/24 12:46:46 [ERROR] service: from /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/app/pact-mock-service.rb:15:in `<main>'
2022/02/24 12:46:56 [ERROR] Expected server to start < 10s. Timed out waiting for Mock Server to start on port 41519 - are you sure it's running?
--- FAIL: TestClientPact_GetUser (0.00s)
--- FAIL: TestClientPact_GetUser/the_user_exists (0.00s)
client_pact_test.go:73: Error on Verify: Post "<http://localhost:41519/interactions>": dial tcp 127.0.0.1:41519: connect: connection refused
FAIL
Post "<http://localhost:41519/pact>": dial tcp 127.0.0.1:41519: connect: connection refused
FAIL <http://github.com/pact-foundation/pact-workshop-go/consumer/client|github.com/pact-foundation/pact-workshop-go/consumer/client> 11.194s
FAIL
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
file -ib /home/altelma/projects/Jörmungandr/pact-workshop-go/pact/lib/vendor/ruby/2.2.0/gems/webrick-1.3.1/lib/webrick/httpservlet/cgihandler.rb
?Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Phongthorn
02/24/2022, 6:16 AMtext/x-ruby; charset=us-ascii
Matt (pactflow.io / pact-js / pact-go)
/tmp/foo
do you still have the same issue?Phongthorn
02/24/2022, 9:41 AMMatt (pactflow.io / pact-js / pact-go)
Phongthorn
02/24/2022, 12:03 PMmake provider
FAIL: TestPactProvider/has_a_matching_body (0.00s)
pact.go:629: Verifying a pact between GoAdminService and GoUserService Given User sally exists A request to login with user 'sally' with GET /user/10 returns a response which has a matching body
pact.go:635: Verifying a pact between GoAdminService and GoUserService Given User sally exists A request to login with user 'sally' with GET /user/10 returns a response which has a matching body
Actual: null
Diff
--------------------------------------
Key: - is expected
+ is actual
Matching keys and values are not shown
-{
- "firstName": "Sally",
- "id": 10,
- "lastName": "McSmiley Face😀😍",
- "type": "admin",
- "username": "sally"
-}
Description of differences
--------------------------------------
* Expected a Hash (like {"firstName"=>"Sally", "id"=>10, "lastName"=>"McSmiley Face😀😍", "type"=>"admin", "username"=>"sally"}) but got nil at $
I already tested with the local pact file. It works. @Matt (pactflow.io / pact-js / pact-go) Do you have any ideas?Phongthorn
02/24/2022, 12:22 PM# Logfile created on 2022-02-24 19:20:00 +0700 by logger.rb/47272
I, [2022-02-24T19:20:02.367233 #78258] INFO -- : Running example 'Verifying a pact between GoAdminService and GoUserService Given User sally exists A request to login with user 'sally' with GET /user/10 returns a response which has status code 200'
I, [2022-02-24T19:20:02.374053 #78258] INFO -- : Sending GET request to path: "/user/10" with headers: {"X_PACT_PROVIDER_STATES"=>[{"name"=>"User sally exists"}]}, see debug logs for body
D, [2022-02-24T19:20:02.374120 #78258] DEBUG -- : body :
I, [2022-02-24T19:20:02.392009 #78258] INFO -- : Received response with status: 401, headers: {"Content-Length"=>"0", "Content-Type"=>"application/json; charset=utf-8", "Date"=>"Thu, 24 Feb 2022 12:20:02 GMT", "X-Api-Correlation-Id"=>"8c2aa5ba-ea1e-4a39-8dfd-20a333d6f387"}, see debug logs for body
D, [2022-02-24T19:20:02.392090 #78258] DEBUG -- : body:
Matt (pactflow.io / pact-js / pact-go)
Matt (pactflow.io / pact-js / pact-go)
Phongthorn
02/24/2022, 3:01 PMos.Getenv
Now It works. Thanks so much.