From 562e1402ac4b99b75b9c82fb5143ef3d75123a43 Mon Sep 17 00:00:00 2001 From: Richard Fernando Heise Ferreira <rfhf19@inf.ufpr.br> Date: Wed, 8 Jul 2020 11:52:17 -0300 Subject: [PATCH] Issue #78: FIX answerNum route Signed-off-by: Richard Heise <rfhf19@inf.ufpr.br> --- src/api/controllers/form.ts | 7 +------ src/api/controllers/formAnswer.spec.ts | 22 +++++++++++----------- src/api/controllers/user.ts | 6 +----- src/utils/answerQueryBuilder.ts | 5 ----- 4 files changed, 13 insertions(+), 27 deletions(-) diff --git a/src/api/controllers/form.ts b/src/api/controllers/form.ts index 8519127..bbfa7ff 100644 --- a/src/api/controllers/form.ts +++ b/src/api/controllers/form.ts @@ -178,13 +178,8 @@ export class FormCtrl { return; } - let sum: number = 0; - for (const forms of resultAnswer) { - sum += Object.keys(forms.inputAnswers).length - } - res.status(200).json({ - answerNumber: sum + answerNumber: resultAnswer.length }); }); } diff --git a/src/api/controllers/formAnswer.spec.ts b/src/api/controllers/formAnswer.spec.ts index cf065c0..5e5dfd4 100644 --- a/src/api/controllers/formAnswer.spec.ts +++ b/src/api/controllers/formAnswer.spec.ts @@ -23,7 +23,7 @@ import * as request from "supertest"; import { expect } from "chai"; import { formAnswerScenario, dbHandlerScenario } from "../../../test/scenario"; import * as server from "../../main"; -import { EnumHandler,InputType, ValidationType } from "../../utils/enumHandler"; +import { EnumHandler, InputType, ValidationType } from "../../utils/enumHandler"; import { TestHandler } from "../../utils/testHandler"; import { OptHandler } from "../../utils/optHandler"; import { Form, FormOptions } from "../../core/form"; @@ -80,7 +80,7 @@ describe("API data controller", () => { .end(done); }); - it("Should respond 200 when reading a form answer", (done) => { + it("Should respond 200 when reading a form answer", (done) => { request(server) .get("/answer/1") @@ -92,10 +92,10 @@ describe("API data controller", () => { TestHandler.testFormAnswer(res.body[i], formAnswerScenario.formAnswerRead[i]); } }) - .end(done); + .end(done); }); - it("Should respond 500 when failing to read a form answer", (done) => { + it("Should respond 500 when failing to read a form answer", (done) => { request(server) .get("/answer/500") @@ -105,20 +105,20 @@ describe("API data controller", () => { .expect((res: any) => { expect(res.body.error).to.be.equal("User dont own this form."); }) - .end(done); + .end(done); }); - it ("Should respond 200 when reading the number of answers from a form", (done) => { + it("Should respond 200 when reading the number of answers from a form", (done) => { request(server) - .get("/answerNumber/1") - .expect(200) - + .get("/answerNumber/1") + .expect(200) + .expect((res: any) => { expect(res.body).to.be.an("object"); expect(res.body.answerNumber).to.be.an("number"); - expect(res.body.answerNumber).to.be.equal(9); + expect(res.body.answerNumber).to.be.equal(3); }) - .end(done); + .end(done); }) }); diff --git a/src/api/controllers/user.ts b/src/api/controllers/user.ts index e9e1778..5559ef8 100644 --- a/src/api/controllers/user.ts +++ b/src/api/controllers/user.ts @@ -261,12 +261,8 @@ export class UserCtrl { innerCallback(err); return; } - let sum: number = 0; - for (const forms of resultAnswer) { - sum += Object.keys(forms.inputAnswers).length - } - form.answersNumber = sum; + form.answersNumber = resultAnswer.length; innerCallback(null); }); diff --git a/src/utils/answerQueryBuilder.ts b/src/utils/answerQueryBuilder.ts index 56e7a8f..9c7b9fe 100644 --- a/src/utils/answerQueryBuilder.ts +++ b/src/utils/answerQueryBuilder.ts @@ -410,11 +410,6 @@ export class AnswerQueryBuilder extends QueryBuilder { return; } - if (result.rowCount === 0) { - cb(ErrorHandler.notFound("Form Answer")); - return; - } - const inputAnswersOpts: InputAnswerOptions[] = result.rows.map((inputsAnswerResult) => { let subForm: FormAnswerOptions = null; if (inputsAnswerResult["id_sub_form"]) { -- GitLab