From f371b0bf52a6fea0ab3bf66c0eef1c1cdbfa6fff Mon Sep 17 00:00:00 2001 From: Yuliia Smirnova Date: Mon, 8 May 2023 15:54:03 +0200 Subject: [PATCH 1/4] Add state, add, subtract, reset test coverage --- week1/homework/src/server.js | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/week1/homework/src/server.js b/week1/homework/src/server.js index 5aea6a470..e2157ec69 100644 --- a/week1/homework/src/server.js +++ b/week1/homework/src/server.js @@ -9,12 +9,40 @@ function createServer(port) { let state = 10; const server = http.createServer((request, response) => { - // TODO: Write your homework code here + const data = { + state: state, + }; + + if (request.method === 'GET') { + if (request.url === '/state') { + response.writeHead(200, { 'Content-Type': 'application/json' }); + response.end(JSON.stringify(data)); + // return state; + } else if (request.url === '/add') { + data.state++; + response.writeHead(200, { 'Content-Type': 'application/json' }); + response.end(JSON.stringify(data)); + // return state; + } else if (request.url === '/subtract') { + data.state--; + response.writeHead(200, { 'Content-Type': 'application/json' }); + response.end(JSON.stringify(data)); + // return state; + } else if (request.url === '/reset') { + data.state = 10; + response.writeHead(200, { 'Content-Type': 'application/json' }); + response.end(JSON.stringify(data)); + // return state; + } else { + response.writeHead(404, { 'Content-Type': 'application/json' }); + response.end(`${response.statusCode} Not Found`); + } + } }); return server; } module.exports = { - createServer + createServer, }; From 79e66c80a0c314a6fed6bd99f93f6edb2b824a4f Mon Sep 17 00:00:00 2001 From: Yuliia Smirnova Date: Mon, 8 May 2023 16:46:43 +0200 Subject: [PATCH 2/4] Fix response.end value --- week1/homework/src/server.js | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/week1/homework/src/server.js b/week1/homework/src/server.js index e2157ec69..2790a5f60 100644 --- a/week1/homework/src/server.js +++ b/week1/homework/src/server.js @@ -9,33 +9,29 @@ function createServer(port) { let state = 10; const server = http.createServer((request, response) => { - const data = { - state: state, - }; + // const data = { + // state: state, + // }; if (request.method === 'GET') { - if (request.url === '/state') { + if (request.url === '/state' || request.url === '/') { response.writeHead(200, { 'Content-Type': 'application/json' }); - response.end(JSON.stringify(data)); - // return state; + response.end(JSON.stringify({ state })); } else if (request.url === '/add') { - data.state++; + state++; response.writeHead(200, { 'Content-Type': 'application/json' }); - response.end(JSON.stringify(data)); - // return state; + response.end(JSON.stringify({ state })); } else if (request.url === '/subtract') { - data.state--; + state--; response.writeHead(200, { 'Content-Type': 'application/json' }); - response.end(JSON.stringify(data)); - // return state; + response.end(JSON.stringify({ state })); } else if (request.url === '/reset') { - data.state = 10; + state = 10; response.writeHead(200, { 'Content-Type': 'application/json' }); - response.end(JSON.stringify(data)); - // return state; + response.end(JSON.stringify({ state })); } else { response.writeHead(404, { 'Content-Type': 'application/json' }); - response.end(`${response.statusCode} Not Found`); + response.end(JSON.stringify({ error: 'Not found' })); } } }); From f39646c07c1bd683242ebe24a88200e0398c6c46 Mon Sep 17 00:00:00 2001 From: Yuliia Smirnova Date: Mon, 8 May 2023 16:56:15 +0200 Subject: [PATCH 3/4] Remove unused const --- week1/homework/src/server.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/week1/homework/src/server.js b/week1/homework/src/server.js index 2790a5f60..65ddcf83d 100644 --- a/week1/homework/src/server.js +++ b/week1/homework/src/server.js @@ -9,10 +9,6 @@ function createServer(port) { let state = 10; const server = http.createServer((request, response) => { - // const data = { - // state: state, - // }; - if (request.method === 'GET') { if (request.url === '/state' || request.url === '/') { response.writeHead(200, { 'Content-Type': 'application/json' }); From 4b2cd44f698a8d122858b5e5c7f6b9b01094998a Mon Sep 17 00:00:00 2001 From: Yuliia Smirnova Date: Mon, 8 May 2023 17:23:08 +0200 Subject: [PATCH 4/4] Fix trailing comma --- week1/homework/src/server.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/week1/homework/src/server.js b/week1/homework/src/server.js index 65ddcf83d..2d4ad8344 100644 --- a/week1/homework/src/server.js +++ b/week1/homework/src/server.js @@ -36,5 +36,5 @@ function createServer(port) { } module.exports = { - createServer, + createServer };