aboutsummaryrefslogtreecommitdiff
path: root/pacts/forumsstore-forumapiserver.json
diff options
context:
space:
mode:
authorRuben Beltran del Rio <ruben@unlimited.pizza>2021-05-02 19:53:10 +0200
committerRuben Beltran del Rio <ruben@unlimited.pizza>2021-05-02 19:53:10 +0200
commitb15225c9dff2864ee774a0ab1dcf19d9353ec10b (patch)
treec492bdda4ae0f1471a9fc8fda6583703cb227269 /pacts/forumsstore-forumapiserver.json
parent605230e032808155d62ed773cc551b5ae1847a5f (diff)
Add posts store pact test
Diffstat (limited to 'pacts/forumsstore-forumapiserver.json')
-rw-r--r--pacts/forumsstore-forumapiserver.json284
1 files changed, 0 insertions, 284 deletions
diff --git a/pacts/forumsstore-forumapiserver.json b/pacts/forumsstore-forumapiserver.json
deleted file mode 100644
index c0e784b..0000000
--- a/pacts/forumsstore-forumapiserver.json
+++ /dev/null
@@ -1,284 +0,0 @@
-{
- "consumer": {
- "name": "ForumsStore"
- },
- "provider": {
- "name": "ForumAPIServer"
- },
- "interactions": [
- {
- "description": "a request to list the forums",
- "providerState": "there's forums",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForums",
- "query": "query GetForums {\n forums {\n id\n glyph\n label\n position\n __typename\n }\n }",
- "variables": {
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForums\\s*\\{\\s*forums\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 200,
- "headers": {
- "Content-Type": "application/json; charset=utf-8"
- },
- "body": {
- "data": {
- "forums": [
- {
- "id": "butter",
- "glyph": "⌘",
- "label": "test_forums.butter",
- "position": 1
- }
- ]
- }
- },
- "matchingRules": {
- "$.body.data.forums": {
- "min": 1
- },
- "$.body.data.forums[*].*": {
- "match": "type"
- },
- "$.body.data.forums[*].id": {
- "match": "type"
- },
- "$.body.data.forums[*].glyph": {
- "match": "type"
- },
- "$.body.data.forums[*].label": {
- "match": "type"
- },
- "$.body.data.forums[*].position": {
- "match": "type"
- }
- }
- }
- },
- {
- "description": "a request to get a single forum",
- "providerState": "there's forums",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForum",
- "query": "query GetForum($id: ID!) {\n forum(id: $id) {\n id\n glyph\n label\n position\n topics {\n id\n title\n updated_at\n ttl\n __typename\n }\n __typename\n }\n }",
- "variables": {
- "id": "freezer"
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForum\\(\\$id:\\s*ID!\\)\\s*\\{\\s*forum\\(id:\\s*\\$id\\)\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*topics\\s*\\{\\s*id\\s*title\\s*updated_at\\s*ttl\\s*__typename\\s*\\}\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 200,
- "headers": {
- "Content-Type": "application/json; charset=utf-8"
- },
- "body": {
- "data": {
- "forum": {
- "id": "freezer",
- "glyph": "✭",
- "label": "test_forums.freezer",
- "position": 3,
- "topics": [
- {
- "id": "629de02c-151a-4db7-bb86-43b2add8a15a",
- "title": "Very pacty topic",
- "updated_at": 1619954611616,
- "ttl": 3601
- }
- ]
- }
- }
- },
- "matchingRules": {
- "$.body.data.forum": {
- "match": "type"
- },
- "$.body.data.forum.glyph": {
- "match": "type"
- },
- "$.body.data.forum.label": {
- "match": "type"
- },
- "$.body.data.forum.position": {
- "match": "type"
- },
- "$.body.data.forum.topics": {
- "min": 1
- },
- "$.body.data.forum.topics[*].*": {
- "match": "type"
- },
- "$.body.data.forum.topics[*].id": {
- "match": "type"
- },
- "$.body.data.forum.topics[*].title": {
- "match": "type"
- },
- "$.body.data.forum.topics[*].updated_at": {
- "match": "type"
- },
- "$.body.data.forum.topics[*].ttl": {
- "match": "type"
- }
- }
- }
- },
- {
- "description": "a request to list the forums",
- "providerState": "there's no forums",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForums",
- "query": "query GetForums {\n forums {\n id\n glyph\n label\n position\n __typename\n }\n }",
- "variables": {
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForums\\s*\\{\\s*forums\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 200,
- "headers": {
- "Content-Type": "application/json; charset=utf-8"
- },
- "body": {
- "data": {
- "forums": [
-
- ]
- }
- }
- }
- },
- {
- "description": "a request to get a single forum",
- "providerState": "there's no forums",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForum",
- "query": "query GetForum($id: ID!) {\n forum(id: $id) {\n id\n glyph\n label\n position\n topics {\n id\n title\n updated_at\n ttl\n __typename\n }\n __typename\n }\n }",
- "variables": {
- "id": "freezer"
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForum\\(\\$id:\\s*ID!\\)\\s*\\{\\s*forum\\(id:\\s*\\$id\\)\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*topics\\s*\\{\\s*id\\s*title\\s*updated_at\\s*ttl\\s*__typename\\s*\\}\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 200,
- "headers": {
- "Content-Type": "application/json; charset=utf-8"
- },
- "body": {
- "data": {
- "forum": null
- }
- }
- }
- },
- {
- "description": "a request to list the forums",
- "providerState": "there's an error",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForums",
- "query": "query GetForums {\n forums {\n id\n glyph\n label\n position\n __typename\n }\n }",
- "variables": {
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForums\\s*\\{\\s*forums\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 500,
- "headers": {
- }
- }
- },
- {
- "description": "a request to get a single forum",
- "providerState": "there's an error",
- "request": {
- "method": "POST",
- "path": "/graphql",
- "headers": {
- "content-type": "application/json"
- },
- "body": {
- "operationName": "GetForum",
- "query": "query GetForum($id: ID!) {\n forum(id: $id) {\n id\n glyph\n label\n position\n topics {\n id\n title\n updated_at\n ttl\n __typename\n }\n __typename\n }\n }",
- "variables": {
- "id": "freezer"
- }
- },
- "matchingRules": {
- "$.body.query": {
- "match": "regex",
- "regex": "query\\s*GetForum\\(\\$id:\\s*ID!\\)\\s*\\{\\s*forum\\(id:\\s*\\$id\\)\\s*\\{\\s*id\\s*glyph\\s*label\\s*position\\s*topics\\s*\\{\\s*id\\s*title\\s*updated_at\\s*ttl\\s*__typename\\s*\\}\\s*__typename\\s*\\}\\s*\\}"
- }
- }
- },
- "response": {
- "status": 500,
- "headers": {
- }
- }
- }
- ],
- "metadata": {
- "pactSpecification": {
- "version": "2.0.0"
- }
- }
-} \ No newline at end of file