Commit c737fa1f authored by Lucas Fernandes de Oliveira's avatar Lucas Fernandes de Oliveira

Merge branch 'issue/11' into 'develop'

Issue #11: Adicionada rota para deletar jogador

Closes #11

See merge request !11
parents af9a14ea ca75f764
Pipeline #22146 passed with stage
in 43 seconds
......@@ -215,19 +215,6 @@ describe("Arquivo main.ts", () => {
})
.end(done);
});
// Testa sucesso em remover um jogo pelo id em app.delete("/jogo/:id")
it("Sucesso em remover um jogo do banco", (done) => {
request(server)
.delete("/jogo/1")
.expect(200)
.expect((res: any) => {
expect(res.body).to.be.an("object");
expect(res.body).to.have.property("msg");
expect(res.body.msg).to.be.an("string");
expect(res.body.msg).to.be.eql("Sucesso em remover jogo");
})
.end(done);
});
// Testa fracasso em remover jogo por id invalido
it("Fracassa em remover jogo por id inválido", (done) => {
request(server)
......@@ -268,6 +255,19 @@ describe("Arquivo main.ts", () => {
})
.end(done);
});
// Testa sucesso em remover um jogo pelo id em app.delete("/jogador/:id")
it("Sucesso em remover um jogador do banco", (done) => {
request(server)
.delete("/jogador/1")
.expect(200)
.expect((res: any) => {
expect(res.body).to.be.an("object");
expect(res.body).to.have.property("msg");
expect(res.body.msg).to.be.an("string");
expect(res.body.msg).to.be.eql("Sucesso em remover jogador");
})
.end(done);
});
// Testa fracasso da inserção de um jogador no bd --- método: post em app.post("/jogador")
// Falta de parâmetro
it("Falha em inserir um jogador por falta de parâmetro", (done) => {
......@@ -313,7 +313,7 @@ describe("Arquivo main.ts", () => {
})
.end(done);
});
// Testando o erro na atualização do jogador com app.put("/jogador/:id")
// Testando o erro na atualização do jogador com app.put("/jogador/:id")
it("Fracassa em atualizar jogador por parâmetro inválido", (done) => {
request(server)
.put("/jogador/0")
......@@ -327,7 +327,7 @@ describe("Arquivo main.ts", () => {
})
.end(done);
});
// Testando o erro na atualização do jogador com app.put("/jogador/:id")
// Testando o erro na atualização do jogador com app.put("/jogador/:id")
it("Fracassa em atualizar jogador por parâmetro inválido", (done) => {
request(server)
.put("/jogador/0")
......@@ -367,4 +367,43 @@ describe("Arquivo main.ts", () => {
})
.end(done);
});
// Testa sucesso em remover um jogo pelo id em app.delete("/jogo/:id")
it("Sucesso em remover um jogo do banco", (done) => {
request(server)
.delete("/jogo/1")
.expect(200)
.expect((res: any) => {
expect(res.body).to.be.an("object");
expect(res.body).to.have.property("msg");
expect(res.body.msg).to.be.an("string");
expect(res.body.msg).to.be.eql("Sucesso em remover jogo");
})
.end(done);
});
// Testa fracasso em remover jogador por id invalido
it("Fracassa em remover jogador por id inválido", (done) => {
request(server)
.delete("/jogador/asduihasuidh")
.expect(400)
.expect((res: any) => {
expect(res.body).to.be.an("object");
expect(res.body).to.have.property("msg");
expect(res.body.msg).to.be.an("string");
expect(res.body.msg).to.be.eql("Busca inapropriada");
})
.end(done);
});
// Testa se o jogador existe no banco
it("Fracassa em remover jogador por não estar no banco", (done) => {
request(server)
.delete("/jogador/999999")
.expect(400)
.expect((res: any) => {
expect(res.body).to.be.an("object");
expect(res.body).to.have.property("msg");
expect(res.body.msg).to.be.an("string");
expect(res.body.msg).to.be.eql("O jogador não existe no banco");
})
.end(done);
});
});
......@@ -64,6 +64,39 @@ app.put("/jogador/:id", (req: Request, res: express.Response) => {
res.json({msg: "O jogador foi atulaizado com sucesso."});
});
app.delete("/jogador/:id", (req: Request, res: express.Response) => {
const id: number = Math.abs(parseInt(req.params.id, 10));
if (isNaN(id)){
res.status(400).json({msg: "Busca inapropriada"});
return;
}
if (id > req.db.list("jogos").length){
res.status(400).json({msg: "O jogador não existe no banco"});
return;
}
req.db.deleteplayer(id);
res.json({msg: "Sucesso em remover jogador"});
});
app.put("/jogador/:id", (req: Request, res: express.Response) => {
if (typeof req.body.nome !== "string") {
res.status(400).json({msg: "Nome inválido"});
return;
}
const id: number = Math.abs(parseInt(req.params.id, 10));
if (isNaN(id)){
res.status(400).json({msg: "Busca inapropriada"});
return;
}
if (id > req.db.list("jogadores").length){
res.status(400).json({msg: "O jogador não existe no banco"});
return;
}
res.json({msg: "O jogador foi atulaizado com sucesso."});
});
app.get("/", (req: Request, res: express.Response) => {
const jogo1: Jogo = new Jogo("Portal 2", "Valve", "Valve", new Date("2012-01-01"), 25);
const jogo2: Jogo = new Jogo("The Witcher 3", "CD Projekt RED", "CD Projekt RED", new Date("2016-01-01"), 10);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment