From db59b5393bb497f9f14e4cfbca24410e4110ec1d Mon Sep 17 00:00:00 2001 From: Fadi Haddad Date: Tue, 14 Mar 2023 07:54:50 +0300 Subject: [PATCH 1/5] Solve conflict --- server.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/server.js b/server.js index 31d08f3..c0f253d 100755 --- a/server.js +++ b/server.js @@ -2,6 +2,30 @@ const express = require("express"); const app = express(); +app.get("/add", (req, res) => { + const {x, y} = parseOperands(req); + const sum = add(x, y); + res.send(200, sum); +}); + +app.get("/subtract", (req, res) => { + const {x, y} = parseOperands(req); + const difference = subtract(x,y); + res.send(200, difference); +}); + +app.get("/multiply", (req, res) => { + const {x, y} = req.query; + const product = parseInt(x) * parseInt(y); + res.send(200, product); +}); + +app.get("/power", (req, res) => { + const {x, y} = req.query; + const power = x**y; + res.send(200, power); +}); + app.get("/", (req, res) => { res.send("Hello World"); }); From 7b388bd11158f41337af341cd6f0da4d68b4fd7f Mon Sep 17 00:00:00 2001 From: ferasdiab Date: Wed, 15 Mar 2023 12:28:17 +0000 Subject: [PATCH 2/5] Add utility function --- utils.js | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 utils.js diff --git a/utils.js b/utils.js new file mode 100644 index 0000000..3a362bb --- /dev/null +++ b/utils.js @@ -0,0 +1,7 @@ +exports.parseOperands = function(req) { + const params = req.query; + return { + x: parseFloat(params.x), + y: parseFloat(params.y), + }; +} \ No newline at end of file From ffd38fb91ae332250e89f8778e4a64f7b484be19 Mon Sep 17 00:00:00 2001 From: ferasdiab Date: Wed, 15 Mar 2023 12:30:17 +0000 Subject: [PATCH 3/5] Add operations module --- operations.js | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 operations.js diff --git a/operations.js b/operations.js new file mode 100644 index 0000000..4d14a21 --- /dev/null +++ b/operations.js @@ -0,0 +1,3 @@ +exports.add = function(x, y) { + return x + y; +} From 672c58a31d0b863af7e2708e366ec14ced2d6954 Mon Sep 17 00:00:00 2001 From: ferasdiab Date: Thu, 16 Mar 2023 09:50:41 +0300 Subject: [PATCH 4/5] Add operation function --- operations.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/operations.js b/operations.js index 4d14a21..b406d03 100644 --- a/operations.js +++ b/operations.js @@ -1,3 +1,3 @@ -exports.add = function(x, y) { - return x + y; +exports.powerFunction = function(x, y) { + return x ** y; } From 67ac35fe56c538756a928f9d97bb5427acace691 Mon Sep 17 00:00:00 2001 From: ferasdiab Date: Thu, 16 Mar 2023 09:50:56 +0300 Subject: [PATCH 5/5] Refactor power function --- server.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server.js b/server.js index c0f253d..73b1401 100755 --- a/server.js +++ b/server.js @@ -1,4 +1,7 @@ const express = require("express"); +const { powerFunction } = require("./operations"); +const { parseOperands } = require("./utils"); + const app = express(); @@ -21,8 +24,8 @@ app.get("/multiply", (req, res) => { }); app.get("/power", (req, res) => { - const {x, y} = req.query; - const power = x**y; + const {x, y} = parseOperands(req); + const power = powerFunction(x,y); res.send(200, power); });