From 0f411016482736dbc4a97256ae46dd15717efc40 Mon Sep 17 00:00:00 2001 From: pauloborba Date: Wed, 4 Oct 2017 12:20:46 -0300 Subject: [PATCH] uso de promessas no teste do servidor --- server/ta-server/package.json | 4 +- server/ta-server/spec/ta-server.spec.ts | 55 ++++++++++++------------- 2 files changed, 28 insertions(+), 31 deletions(-) diff --git a/server/ta-server/package.json b/server/ta-server/package.json index 0fa16daed..1d88730fe 100644 --- a/server/ta-server/package.json +++ b/server/ta-server/package.json @@ -15,8 +15,8 @@ "@types/express": "^4.0.37" }, "devDependencies": { - "@types/request": "^2.0.3", + "@types/request-promise": "^4.1.38", "jasmine": "^2.8.0", - "request": "^2.83.0" + "request-promise": "^4.2.2" } } diff --git a/server/ta-server/spec/ta-server.spec.ts b/server/ta-server/spec/ta-server.spec.ts index 1bcd94899..04e7f9158 100644 --- a/server/ta-server/spec/ta-server.spec.ts +++ b/server/ta-server/spec/ta-server.spec.ts @@ -1,4 +1,4 @@ -import request = require("request"); +import request = require("request-promise"); import { closeServer } from '../ta-server'; var base_url = "http://localhost:3000/"; @@ -6,38 +6,35 @@ var base_url = "http://localhost:3000/"; describe("O servidor", () => { var server:any; - beforeAll(() => server = require('../ta-server')); + beforeAll(() => {server = require('../ta-server')}); - afterAll(() => server.closeServer()); + afterAll(() => {server.closeServer()}); - it("inicialmente retorna uma lista de alunos vazia", (done:any) => { - request.get(base_url + "alunos", (error, response, body) => { - expect(body).toBe("[]"); - done(); - }); + it("inicialmente retorna uma lista de alunos vazia", () => { + return request.get(base_url + "alunos").then(body => expect(body).toBe("[]")).catch(e => expect(e).toEqual(null)); }) - it("só cadastra alunos", (done:any) => { - request.post(base_url + "aluno", {"json":{"name": "Mari", "cpf" : "962"}}, (error, response, body) => { - expect(body).toEqual({failure: "O aluno não pode ser cadastrado"}); - done(); - }); - }) - - it("não cadastra alunos com CPF duplicado", (done:any) => { - request.post(base_url + "aluno", {"json":{"nome": "Mari", "cpf" : "965"}}, (error, response, body) => { - expect(body).toEqual({success: "O aluno foi cadastrado com sucesso"}); - done(); - }); - request.post(base_url + "aluno", {"json":{"nome": "Pedro", "cpf" : "965"}}, (error, response, body) => { - expect(body).toEqual({failure: "O aluno não pode ser cadastrado"}); - done(); - }); - request.get(base_url + "alunos", (error, response, body) => { - expect(body).toContain('[{"nome": "Mari", "cpf" : "965", "email": "", "metas":{}}]'); - expect(body).not.toContain('[{"nome": "Pedro", "cpf" : "965", "email": "", "metas":{}}]'); - done(); - }); + it("só cadastra alunos", () => { + var options:any = {method: 'POST', uri: (base_url + "aluno"), body:{name: "Mari", cpf: "962"}, json: true}; + return request(options).then(body => + expect(body).toEqual({failure: "O aluno não pode ser cadastrado"}) + ).catch(e => + expect(e).toEqual(null) + ) + }); + + + it("não cadastra alunos com CPF duplicado", () => { + return request.post(base_url + "aluno", {"json":{"nome": "Mari", "cpf" : "965"}}).then(body => { + expect(body).toEqual({success: "O aluno foi cadastrado com sucesso"}); + return request.post(base_url + "aluno", {"json":{"nome": "Pedro", "cpf" : "965"}}).then(body => { + expect(body).toEqual({failure: "O aluno não pode ser cadastrado"}); + return request.get(base_url + "alunos").then(body => { + expect(body).toContain('{"nome":"Mari","cpf":"965","email":"","metas":{}}'); + expect(body).not.toContain('{"nome":"Pedro","cpf":"965","email":"","metas":{}}'); + }); + }); + }); }) })