From 6cb0efc1abeccd8f6a9c7ca7f209ff22c42341bd Mon Sep 17 00:00:00 2001 From: kaotisk Date: Fri, 1 Mar 2024 02:47:10 +0200 Subject: Renamed functions and routes receive* -> announce* szbk -> /v0/announce/zblock szch -> /v0/announce/zchain --- api/routes/announceZBlock/index.js | 29 ++++++++++++++++++++++ api/routes/announceZChain/index.js | 49 ++++++++++++++++++++++++++++++++++++++ api/routes/index.js | 8 +++---- api/routes/receiveZBlock/index.js | 28 ---------------------- api/routes/receiveZChain/index.js | 48 ------------------------------------- api/tests/announce_zblock.sh | 32 +++++++++++++++++++++++++ api/tests/announce_zchain_link.sh | 34 ++++++++++++++++++++++++++ api/tests/send_me_a_zblock.sh | 32 ------------------------- api/tests/send_me_a_zchain_link.sh | 34 -------------------------- 9 files changed, 148 insertions(+), 146 deletions(-) create mode 100644 api/routes/announceZBlock/index.js create mode 100644 api/routes/announceZChain/index.js delete mode 100644 api/routes/receiveZBlock/index.js delete mode 100644 api/routes/receiveZChain/index.js create mode 100755 api/tests/announce_zblock.sh create mode 100755 api/tests/announce_zchain_link.sh delete mode 100755 api/tests/send_me_a_zblock.sh delete mode 100755 api/tests/send_me_a_zchain_link.sh diff --git a/api/routes/announceZBlock/index.js b/api/routes/announceZBlock/index.js new file mode 100644 index 0000000..b395dbf --- /dev/null +++ b/api/routes/announceZBlock/index.js @@ -0,0 +1,29 @@ +/* + * Accepts a ZBLOCK! + * + * Checks: + * 1. Exists, + * 2. Length is 46 bytes, + * 3. Matches regular expression /Qm[A-Za-z0-9]{44}/ + * + * Returns: + * - error on failure + * - on success the string is processed for further + * validation to the function getvalidity() + * + */ +const getvalidity = require('../../validators/ZblockValidator') +module.exports = (req, res) => { + console.log(req); + console.log("okay we got called"); + if ( (req.body.zblock) && req.body.zblock.length === 46 ){ + regex= /Qm[A-Za-z0-9]{44}/; + if (regex.test(req.body.zblock)){ + getvalidity(req.body.zblock,res); + } else { + res.send({error:"Invalid data"}); + } + } else { + res.send({error:"Invalid data"}); + } +} diff --git a/api/routes/announceZChain/index.js b/api/routes/announceZChain/index.js new file mode 100644 index 0000000..092b6a9 --- /dev/null +++ b/api/routes/announceZChain/index.js @@ -0,0 +1,49 @@ +/* + * After NS validation went through we examine the return code + * of the application that run the test. + * + * Returns: + * - error on failure + * - on success we process with addNSEntriesToFile() + * + */ +function continuethingsNS(validitycode,sh,res,gotit){ + if (validitycode === 0){ + var entry = { + zchain: sh, + latest: JSON.parse(gotit).Path.replace('/ipfs/','') + }; + addNSEntriesToFile(entry,res); + } else { + res.send({error:"Invalid data"}); + } +} +/* + * Accepts a zchain + * + * Checks: + * 1. Exists, + * 2. Length is 62 bytes, + * 3. Matches regular expression /k51qzi5uqu5d[A-Za-z0-9]{50}/ + * + * Returns: + * - error on failure + * - on success the string is processed for further validation to the + * function getNSvalidity() + * + */ +const getNSvalidity = require('../../validators/ZchainValidator') + +module.exports = (req, res) => { + console.log(req); + if ( (req.body.zchain) && req.body.zchain.length === 62 ){//&& req.body.block_signature.length === 46){ + regex= /k51qzi5uqu5d[A-Za-z0-9]{50}/ + if (regex.test(req.body.zchain)){ // && regex.test(req.body.block_signature)){ + getNSvalidity(req.body.zchain,res); + } else { + res.send({error:"Invalid data"}); + } + } else { + res.send({error:"Invalid data"}); + } +} diff --git a/api/routes/index.js b/api/routes/index.js index cb3c584..f68e2e6 100644 --- a/api/routes/index.js +++ b/api/routes/index.js @@ -8,8 +8,8 @@ const getSLatest = require('./getSLatest'); const getZLatest = require('./getZLatest'); const getSBlock = require('./getSBlock'); const getZChain = require('./getZChain'); -const receiveZBlock = require('./receiveZBlock'); -const receiveZChain = require('./receiveZChain'); +const announceZBlock = require('./announceZBlock'); +const announceZChain = require('./announceZChain'); const getZblock = require('./getZblock'); const getMrk = require('./getMrk'); const getTr = require('./getTr'); @@ -53,9 +53,9 @@ router.route(settings.URL_PREFIX+'/mrk/:mrk').get(getMrk); // Returns a tr router.route(settings.URL_PREFIX+'/tr/:tr').get(getTr); // Send a block to the node (zchain block) -router.route(settings.URL_PREFIX+'/sblk').post(receiveZBlock); +router.route(settings.URL_PREFIX+'/announce/zblock').post(announceZBlock); // Send a zchain link to the node (refering to a valid zchain out there) -router.route(settings.URL_PREFIX+'/szch').post(receiveZChain); +router.route(settings.URL_PREFIX+'/announce/zchain').post(announceZChain); router.route('/*').get((req,res)=>{console.log(req.url);res.send({error:"404"})}); router.route('/*').post((req,res)=>{console.log(req.url);res.send({error:"404"})}); diff --git a/api/routes/receiveZBlock/index.js b/api/routes/receiveZBlock/index.js deleted file mode 100644 index 4f1ae3d..0000000 --- a/api/routes/receiveZBlock/index.js +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Accepts a ZBLOCK! - * - * Checks: - * 1. Exists, - * 2. Length is 46 bytes, - * 3. Matches regular expression /Qm[A-Za-z0-9]{44}/ - * - * Returns: - * - error on failure - * - on success the string is processed for further - * validation to the function getvalidity() - * - */ -const getvalidity = require('../../validators/ZblockValidator') -module.exports = (req, res) => { - console.log("okay we got called") - if ( (req.body.zblock) && req.body.zblock.length === 46 ){ - regex= /Qm[A-Za-z0-9]{44}/; - if (regex.test(req.body.zblock)){ - getvalidity(req.body.zblock,res); - } else { - res.send({error:"Invalid data"}); - } - } else { - res.send({error:"Invalid data"}); - } -} diff --git a/api/routes/receiveZChain/index.js b/api/routes/receiveZChain/index.js deleted file mode 100644 index a955b79..0000000 --- a/api/routes/receiveZChain/index.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * After NS validation went through we examine the return code - * of the application that run the test. - * - * Returns: - * - error on failure - * - on success we process with addNSEntriesToFile() - * - */ -function continuethingsNS(validitycode,sh,res,gotit){ - if (validitycode === 0){ - var entry = { - zchain: sh, - latest: JSON.parse(gotit).Path.replace('/ipfs/','') - }; - addNSEntriesToFile(entry,res); - } else { - res.send({error:"Invalid data"}); - } -} -/* - * Accepts a zchain - * - * Checks: - * 1. Exists, - * 2. Length is 62 bytes, - * 3. Matches regular expression /k51qzi5uqu5d[A-Za-z0-9]{50}/ - * - * Returns: - * - error on failure - * - on success the string is processed for further validation to the - * function getNSvalidity() - * - */ -const getNSvalidity = require('../../validators/ZchainValidator') - -module.exports = (req, res) => { - if ( (req.body.zchain) && req.body.zchain.length === 62 ){//&& req.body.block_signature.length === 46){ - regex= /k51qzi5uqu5d[A-Za-z0-9]{50}/ - if (regex.test(req.body.zchain)){ // && regex.test(req.body.block_signature)){ - getNSvalidity(req.body.zchain,res); - } else { - res.send({error:"Invalid data"}); - } - } else { - res.send({error:"Invalid data"}); - } -} diff --git a/api/tests/announce_zblock.sh b/api/tests/announce_zblock.sh new file mode 100755 index 0000000..be34930 --- /dev/null +++ b/api/tests/announce_zblock.sh @@ -0,0 +1,32 @@ +#!/bin/bash +PROGRAM="$(basename $0)" +printf '[%s]\n' "$PROGRAM" +printf "\t01:\tendpoint with valid data" +curl http://127.0.0.1:8610/v0/announce/zblock --header 'Content-Type: application/json' --data-raw '{"zblock":"'$(ak-get-zlatest)'"}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" + +printf "\t02:\tendpoint with invalid data" +curl http://127.0.0.1:8610/v0/announce/zblock --header 'Content-Type: application/json' --data-raw '{"zblock":"'$(ak-get-zlatest)'sdfas"}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" + +printf "\t03:\tendpoint no data" +curl http://127.0.0.1:8610/v0/announce/zblock --header 'Content-Type: application/json' --data-raw '{"zblock":""}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" diff --git a/api/tests/announce_zchain_link.sh b/api/tests/announce_zchain_link.sh new file mode 100755 index 0000000..f788f77 --- /dev/null +++ b/api/tests/announce_zchain_link.sh @@ -0,0 +1,34 @@ +#!/bin/bash +PROGRAM="$(basename $0)" +printf '[%s]\n' "$PROGRAM" +printf "TEST\t/announce/zchain\n" +# curl http://127.0.0.1:8610/v0/announce/zchain +printf "\t01:\tendpoint with valid data" +curl -POST http://localhost:8610/v0/announce/zchain --header 'Content-Type: application/json' --data-raw '{"zchain":"k51qzi5uqu5dgapvk7bhxmchuqya9immqdpbz0f1r91ckpdqzub63afn3d5apr"}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" + +printf "\t02:\tendpoint with invalid data" +curl -POST http://localhost:8610/v0/announce/zchain --header 'Content-Type: application/json' --data-raw '{"zchain":"k51qzi5uqu5dgapvk7bhxmchuqya9immqdpbz0f1r91ckpdqzub63afn3d5aar"}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" + +printf "\t03:\tendpoint no data" +curl -POST http://localhost:8610/v0/announce/zchain --header 'Content-Type: application/json' --data-raw '{"zchain":""}' 2>/dev/null | jq -M -c > /dev/null +if [ "$?" == "0" ] +then + printf "\t\t\033[0;32mPASSED\033[0;0m" +else + printf "\t\033[0;31mFAILED\033[0;0m" +fi +printf "\n" diff --git a/api/tests/send_me_a_zblock.sh b/api/tests/send_me_a_zblock.sh deleted file mode 100755 index 73f514e..0000000 --- a/api/tests/send_me_a_zblock.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -PROGRAM="$(basename $0)" -printf '[%s]\n' "$PROGRAM" -printf "\t01:\tendpoint with valid data" -curl http://127.0.0.1:8610/v0/sblk --header 'Content-Type: application/json' --data-raw '{"zblock":"'$(ak-get-zlatest)'"}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" - -printf "\t02:\tendpoint with invalid data" -curl http://127.0.0.1:8610/v0/sblk --header 'Content-Type: application/json' --data-raw '{"zblock":"'$(ak-get-zlatest)'sdfas"}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" - -printf "\t03:\tendpoint no data" -curl http://127.0.0.1:8610/v0/sblk --header 'Content-Type: application/json' --data-raw '{"zblock":""}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" diff --git a/api/tests/send_me_a_zchain_link.sh b/api/tests/send_me_a_zchain_link.sh deleted file mode 100755 index 15bc2a0..0000000 --- a/api/tests/send_me_a_zchain_link.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash -PROGRAM="$(basename $0)" -printf '[%s]\n' "$PROGRAM" -printf "TEST\t/szch\n" -# curl http://127.0.0.1:8610/v0/szch -printf "\t01:\tendpoint with valid data" -curl -POST http://localhost:8610/v0/szch --header 'Content-Type: application/json' --data-raw '{"zchain":"k51qzi5uqu5dgapvk7bhxmchuqya9immqdpbz0f1r91ckpdqzub63afn3d5apr"}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" - -printf "\t02:\tendpoint with invalid data" -curl -POST http://localhost:8610/v0/szch --header 'Content-Type: application/json' --data-raw '{"zchain":"k51qzi5uqu5dgapvk7bhxmchuqya9immqdpbz0f1r91ckpdqzub63afn3d5aar"}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" - -printf "\t03:\tendpoint no data" -curl -POST http://localhost:8610/v0/szch --header 'Content-Type: application/json' --data-raw '{"zchain":""}' 2>/dev/null | jq -M -c > /dev/null -if [ "$?" == "0" ] -then - printf "\t\t\033[0;32mPASSED\033[0;0m" -else - printf "\t\033[0;31mFAILED\033[0;0m" -fi -printf "\n" -- cgit v1.2.3