From 30b36952e7ece5c3dee27a151a10320347d8602f Mon Sep 17 00:00:00 2001 From: Mathew Jose Mammoottil <60283272+mathew-jose@users.noreply.github.com> Date: Thu, 12 May 2022 13:46:08 +0530 Subject: [PATCH] Run Postman Collection Once All Docker Images are built (#50) * Added Postman collection and env variables * Update ci.yml to run postman collections Co-authored-by: Roshan Piyush --- .github/workflows/ci.yml | 15 +- .../Crapi.postman_environment.json | 23 + postman_collections/car.mp4 | Bin 0 -> 236866 bytes .../crAPI Accepted.postman_collection.json | 2077 +++++++++++++++++ 4 files changed, 2114 insertions(+), 1 deletion(-) create mode 100644 postman_collections/Crapi.postman_environment.json create mode 100644 postman_collections/car.mp4 create mode 100644 postman_collections/crAPI Accepted.postman_collection.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d9ffe035..82eb82bf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -147,6 +147,20 @@ jobs: - name: Env seen run: env + + - name: Run crAPI using built images + run: VERSION=${{ env.TAG_NAME }} docker-compose -f deploy/docker/docker-compose.yml --compatibility up -d + + - name: Install Node + uses: actions/setup-node@v3 + with: + node-version: 14 + + - name: Install newman + run: npm install -g newman + + - name: Run Postman Collection + run: (newman run "./postman_collections/crAPI Accepted.postman_collection.json" -e ./postman_collections/Crapi.postman_environment.json) || true - name: Build crapi-identity all platforms and conditionally push to Docker Hub uses: docker/build-push-action@v2 @@ -199,4 +213,3 @@ jobs: cache-from: type=gha cache-to: type=gha,mode=max - diff --git a/postman_collections/Crapi.postman_environment.json b/postman_collections/Crapi.postman_environment.json new file mode 100644 index 00000000..b86e755d --- /dev/null +++ b/postman_collections/Crapi.postman_environment.json @@ -0,0 +1,23 @@ +{ + "id": "d72c78a4-a99a-4413-88f6-0a3bb4cdbc1c", + "name": "Crapi", + "values": [{ + "key": "url", + "value": "http://127.0.0.1:8888", + "enabled": true + }, + { + "key": "url_mail", + "value": "http://127.0.0.1:8025", + "enabled": true + }, + { + "key": "video_file", + "value": "./postman_collections/car.mp4", + "enabled": true + } + ], + "_postman_variable_scope": "environment", + "_postman_exported_at": "2022-05-07T14:12:58.459Z", + "_postman_exported_using": "Postman/9.17.2" +} \ No newline at end of file diff --git a/postman_collections/car.mp4 b/postman_collections/car.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..43f62d210a9918fea1830e2f40bbc70b06550f12 GIT binary patch literal 236866 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 E1#|t{V*mgE literal 0 HcmV?d00001 diff --git a/postman_collections/crAPI Accepted.postman_collection.json b/postman_collections/crAPI Accepted.postman_collection.json new file mode 100644 index 00000000..586bb445 --- /dev/null +++ b/postman_collections/crAPI Accepted.postman_collection.json @@ -0,0 +1,2077 @@ +{ + "info": { + "_postman_id": "108b5557-e108-41ad-b9c9-28811eb81b1e", + "name": "crAPI Accepted", + "description": "crAPI Training Scripts", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" + }, + "item": [ + { + "name": "Signup example.com", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript" + } + }, + { + "listen": "prerequest", + "script": { + "exec": [ + "const {Property} = require('postman-collection');", + "", + "let name = Property.replaceSubstitutions('{{$randomFirstName}}.{{$randomLastName}}');", + "pm.globals.set(\"name\", name);", + "let newName = Property.replaceSubstitutions('{{$randomFirstName}}.{{$randomLastName}}');", + "pm.globals.set(\"new_name\", newName);", + "let email = name+\"@example.com\";", + "let newEmail = newName+\"@example.com\";", + "let pass = Property.replaceSubstitutions(\"{{$randomPassword}}\");", + "let phone = Property.replaceSubstitutions(\"{{$randomPhoneNumber}}\").replace(/-/g,'');", + "pm.globals.set(\"email\", email);", + "pm.globals.set(\"new_email\", newEmail);", + "pm.globals.set(\"password\", pass);", + "pm.globals.set(\"name\", name);", + "pm.globals.set(\"phone\", phone);", + "console.log(email, newEmail, pass, phone);", + "console.log(name );" + ], + "type": "text/javascript" + } + } + ], + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "body": { + "mode": "raw", + "raw": "{\"name\":\"{{name}}\",\"email\":\"{{email}}\",\"number\":\"{{phone}}\",\"password\":\"{{password}}\"}" + }, + "url": { + "raw": "{{url}}/identity/api/auth/signup", + "host": [ + "{{url}}" + ], + "path": [ + "identity", + "api", + "auth", + "signup" + ] + } + }, + "response": [] + }, + { + "name": "Login", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " pm.globals.set(\"token\", jsonData.token);", + " var token = pm.globals.get(\"token\");", + " pm.test(\"Token is set\", function () {", + " pm.expect(jsonData.token).to.eql(token);", + " });", + "});", + "" + ], + "type": "text/javascript" + } + }, + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } + } + ], + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "body": { + "mode": "raw", + "raw": "{\"email\":\"{{email}}\",\"password\":\"{{password}}\"}" + }, + "url": { + "raw": "{{url}}/identity/api/auth/login", + "host": [ + "{{url}}" + ], + "path": [ + "identity", + "api", + "auth", + "login" + ] + } + }, + "response": [] + }, + { + "name": "Forgot Password", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " pm.test(\"Body matches string\", function () {", + " pm.expect(pm.response.text()).to.include(\"OTP Sent\");", + " });", + "});", + "" + ], + "type": "text/javascript" + } + }, + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } + } + ], + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "body": { + "mode": "raw", + "raw": "{\"email\":\"{{email}}\"}" + }, + "url": { + "raw": "{{url}}/identity/api/auth/forget-password", + "host": [ + "{{url}}" + ], + "path": [ + "identity", + "api", + "auth", + "forget-password" + ] + } + }, + "response": [] + }, + { + "name": "SearchMailOTP", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "", + "", + "function dynamicSort(property) {", + " var sortOrder = 1;", + " if(property[0] === \"-\") {", + " sortOrder = -1;", + " property = property.substr(1);", + " }", + " return function (a,b) {", + " /* next line works with strings and numbers, ", + " * and you may want to customize it to your needs", + " */", + " var result = (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0;", + " return result * sortOrder;", + " }", + "}", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " var mails = jsonData.items;", + "", + " pm.test(\"Your test name\", function () {", + " pm.expect(mails.length).to.be.gt(0);", + " var mail = mails[0];", + " console.log(mail);", + " //mails.sort(dynamicSort(\"Created\"));", + " var mail = mails[0];", + " var mbody = mail['Raw']['Data'].replace(/[^a-zA-Z0-9<>:]*\\n/g, \"\");", + " console.log(mail);", + " var otpmatch = mbody.match(/generated otp is: ([0-9]+)/);", + " console.log(otpmatch);", + " var otp = otpmatch[1]", + " console.log(\"OTP: \"+ otp);", + " pm.globals.set(\"OTP\", otp);", + " });", + " ", + "});", + "" + ], + "type": "text/javascript" + } + } + ], + "protocolProfileBehavior": { + "disableBodyPruning": true + }, + "request": { + "method": "GET", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "body": { + "mode": "raw", + "raw": "" + }, + "url": { + "raw": "{{url_mail}}/api/v2/search?kind=to&query={{email}}&limit=10", + "host": [ + "{{url_mail}}" + ], + "path": [ + "api", + "v2", + "search" + ], + "query": [ + { + "key": "kind", + "value": "to" + }, + { + "key": "query", + "value": "{{email}}" + }, + { + "key": "limit", + "value": "10" + } + ] + } + }, + "response": [] + }, + { + "name": "Check OTP", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});", + "" + ], + "type": "text/javascript" + } + }, + { + "listen": "prerequest", + "script": { + "exec": [ + "" + ], + "type": "text/javascript" + } + } + ], + "request": { + "auth": { + "type": "noauth" + }, + "method": "POST", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"email\": \"{{email}}\",\n \"otp\": \"{{OTP}}\",\n \"password\": \"{{password}}\"\n}" + }, + "url": { + "raw": "{{url}}/identity/api/auth/v3/check-otp", + "host": [ + "{{url}}" + ], + "path": [ + "identity", + "api", + "auth", + "v3", + "check-otp" + ] + } + }, + "response": [] + }, + { + "name": "Resend vehicle email", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + "});" + ], + "type": "text/javascript" + } + } + ], + "request": { + "method": "POST", + "header": [ + { + "key": "User-Agent", + "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" + }, + { + "key": "Content-Type", + "value": "application/json" + }, + { + "key": "Accept", + "value": "*/*" + } + ], + "url": { + "raw": "{{url}}/identity/api/v2/vehicle/resend_email", + "host": [ + "{{url}}" + ], + "path": [ + "identity", + "api", + "v2", + "vehicle", + "resend_email" + ] + } + }, + "response": [] + }, + { + "name": "SearchMailVehicle", + "event": [ + { + "listen": "test", + "script": { + "exec": [ + "", + "function dynamicSort(property) {", + " var sortOrder = 1;", + " if(property[0] === \"-\") {", + " sortOrder = -1;", + " property = property.substr(1);", + " }", + " return function (a,b) {", + " /* next line works with strings and numbers, ", + " * and you may want to customize it to your needs", + " */", + " var result = (a[property] < b[property]) ? -1 : (a[property] > b[property]) ? 1 : 0;", + " return result * sortOrder;", + " }", + "}", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " var mails = jsonData.items;", + "", + " pm.test(\"Your test name\", function () {", + " pm.expect(mails.length).to.be.gt(0);", + " console.log(mails[0]);", + " //mails.sort(dynamicSort(\"Created\"));", + " console.log(mails[0]);", + " var mail = mails[0];", + " var mbody = mail['Raw']['Data'].replace(/[^a-zA-Z0-9<>:]*\\n/g, \"\");", + " var vintext = mbody.match(/VIN(.*)Pincode/i);", + " console.log(vintext);", + " var VIN = vintext[1].match(/>([A-Za-z0-9]+)([0-9]+) b[property]) ? 1 : 0;", + " return result * sortOrder;", + " }", + "}", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " var mails = jsonData.items;", + "", + " pm.test(\"Get Token\", function () {", + " pm.expect(mails.length).to.be.gt(0);", + " //mails.sort(dynamicSort(\"Created\"));", + " var mail = mails[0];", + " var mbody = mail['Raw']['Data'].replace(/[^a-zA-Z0-9<>:]*\\n/g, \"\");", + " console.log(mbody);", + " var tokentext = mbody.match(/token:\\s*[^\\s]+/i);", + " console.log(tokentext);", + " var email_token = tokentext[0].match(/>([A-Za-z0-9]+) b[property]) ? 1 : 0;", + " return result * sortOrder;", + " }", + "}", + "pm.test(\"Status code is 200\", function () {", + " pm.response.to.have.status(200);", + " var jsonData = JSON.parse(responseBody);", + " var mails = jsonData.items;", + "", + " pm.test(\"Get Token\", function () {", + " pm.expect(mails.length).to.be.gt(0);", + " //mails.sort(dynamicSort(\"Created\"));", + " var mail = mails[0];", + " var mbody = mail['Raw']['Data'].replace(/[^a-zA-Z0-9<>:]*\\n/g, \"\");", + " console.log(mbody);", + " var tokentext = mbody.match(/token:\\s*[^\\s]+/i);", + " console.log(tokentext);", + " var email_token = tokentext[0].match(/>([A-Za-z0-9]+)