Skip to content

Commit

Permalink
uso de promessas no teste do servidor
Browse files Browse the repository at this point in the history
  • Loading branch information
pauloborba committed Oct 4, 2017
1 parent 06f393c commit 0f41101
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 31 deletions.
4 changes: 2 additions & 2 deletions server/ta-server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
}
}
55 changes: 26 additions & 29 deletions server/ta-server/spec/ta-server.spec.ts
Original file line number Diff line number Diff line change
@@ -1,43 +1,40 @@
import request = require("request");
import request = require("request-promise");
import { closeServer } from '../ta-server';

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":{}}');
});
});
});
})

})

0 comments on commit 0f41101

Please sign in to comment.