Comments (4)
What version of PactJVM are you using?
Had a look at what the PactSwift's pact structure looks like using your example.
The structure and all seems correct when sending the pact model to pact_ffi
.
Must be an issue in pact_ffi
verifier not honouring the generators
object when verifying the request.
"request": {
"path": "/api/species",
"body": {
"deviceName": "WppxFhJaX3TAhzTKZakW",
"platform": "pqZtJuwTcArF7uGe6L1d",
"platformVersion": "QSb5cMfpGXo8ul3HCpXK",
"language": "ZAjcMhbPXh9LDf9SsE1r",
"application": "JE4FtUcRH4uBDl0x5wu6",
"applicationVersion": "9qrmoscqbYd2cGcUq5FD",
"token": "XcunuysQYixQhGYn1Xdd"
},
"method": "post",
"headers": {
"Content-Type": "application/json"
},
"generators": {
"body": {
"$.platform": {
"type": "RandomString",
"size": 20
},
"$.deviceName": {
"type": "RandomString",
"size": 20
},
"$.token": {
"type": "RandomString",
"size": 20
},
"$.language": {
"type": "RandomString",
"size": 20
},
"$.applicationVersion": {
"type": "RandomString",
"size": 20
},
"$.application": {
"type": "RandomString",
"size": 20
},
"$.platformVersion": {
"type": "RandomString",
"size": 20
}
}
}
},
"response": {
...
from pactswift.
Thank you, I'm using Pact JVM 4.3.18.
from pactswift.
I'll ask the team working on pact_ffi
about it, but can't necessarily promise anything.
This "might" be fixed with the new PactSwift
version that's currently in the works on a fork.
It will take advantage of Apple's concurrency and will slightly change how the DSL works. As a bit of a background v1 creates a pact model and sends it to pact_ffi
(the Pact business logic/verifier/mock server written in Rust and shared across language implementations). The new PactSwift v2 will send each of the interactions into pact_ffi
via a handler. V2 will essentially shift responsibility into pact_ffi
. So not sure if that will help you with your project.
No timelines for when it will be available though!
from pactswift.
@surpher Great, thanks!
from pactswift.
Related Issues (20)
- Support Cocoapods along side Carthage and SPM HOT 1
- Question: Rest vs GraphQL services HOT 3
- Reporting a vulnerability
- Question: What about Pact Specification v4? HOT 2
- Question: arrayContaining Matcher and the dynamic JSON keys. HOT 7
- Surface interaction mismatches to the test running the validation
- Support matchers and example generators in requests
- Task: Clean up tests and Linux specific code HOT 1
- Task: Unit tests for swift concurrency refactor HOT 4
- Task: Proof of concept using Pact plugins
- Task: Find a way to reduce PactSwiftMockServer repo size HOT 1
- Create new release with concurrency support HOT 3
- Allow to merge with existing pact file HOT 2
- Question: Create PACT for JSON body that contains only a string HOT 4
- Unable to run real device -- Pactconsumer HOT 1
- Unable to run real device — Pactswift HOT 2
- PactSwift how to build on CI HOT 3
- Rules defined on the mock services aren't all written to the generated pact contract. HOT 6
- Feature Request: Add Ability to Pass Custom Header for Verification HOT 14
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pactswift.