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; +} diff --git a/server.js b/server.js index 9af1daa..72a4dac 100755 --- a/server.js +++ b/server.js @@ -1,30 +1,37 @@ const express = require("express"); +const { add } = require("./operations"); +const { parseOperands } = require("./utils"); const app = express(); app.get("/add", (req, res) => { - const {x, y} = req.query; - const sum = parseInt(x) + parseInt(y); - res.send(200, sum); + const { x, y } = parseOperands(req); + const sum = add(x, y); + res.send(200, sum); }); app.get("/subtract", (req, res) => { - const {x, y} = req.query; - const difference = parseInt(x) - parseInt(y); - res.send(200, difference); + 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); + 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) => { - console.log("Root Path request"); - res.send(200, "Hello World, this is becoming mmuch more fun!"); + res.send("Hello World"); }); app.listen(8000, (req, res) => { - console.log("Server connected on port 8000"); + console.log("Server connected on port 8000"); }); diff --git a/task2.png b/task2.png new file mode 100644 index 0000000..77d79f7 Binary files /dev/null and b/task2.png differ 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