From dc701d95ace4cff7c8919ca6842fe400af3f2276 Mon Sep 17 00:00:00 2001 From: Cristiane Reis Date: Sat, 8 Jun 2024 16:25:51 -0300 Subject: [PATCH] entrega do valor total do projeto --- package.json | 4 +- .../cristiane-reis/calcularPacote.teste.js | 9 +++ .../cristiane-reis/horasPorProjeto.test.js | 9 +++ .../cristiane-reis/valorHora.teste.js | 10 +++ .../cristiane-reis/valorProjeto.teste.js | 63 +++++++++++++++++++ 5 files changed, 93 insertions(+), 2 deletions(-) create mode 100644 src/entregasDesafio/cristiane-reis/calcularPacote.teste.js create mode 100644 src/entregasDesafio/cristiane-reis/horasPorProjeto.test.js create mode 100644 src/entregasDesafio/cristiane-reis/valorHora.teste.js create mode 100644 src/entregasDesafio/cristiane-reis/valorProjeto.teste.js diff --git a/package.json b/package.json index f454b90..75fb201 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "keywords": [], "author": "", "license": "ISC", - "dependencies": { - "jest": "^28.1.2" + "devDependencies": { + "jest": "^29.7.0" } } diff --git a/src/entregasDesafio/cristiane-reis/calcularPacote.teste.js b/src/entregasDesafio/cristiane-reis/calcularPacote.teste.js new file mode 100644 index 0000000..489bf8e --- /dev/null +++ b/src/entregasDesafio/cristiane-reis/calcularPacote.teste.js @@ -0,0 +1,9 @@ +const { calcularPacote } = require('../../dominio/calculadora/Projeto/pacote'); + +describe("Calcular pacote", () =>{ + test("calcular pacote basico quando 23 horas", () =>{ + const retornado = calcularPacote(23); + const esperado = 'pacote_basico'; + expect(esperado).toBe(retornado); + }); +}); \ No newline at end of file diff --git a/src/entregasDesafio/cristiane-reis/horasPorProjeto.test.js b/src/entregasDesafio/cristiane-reis/horasPorProjeto.test.js new file mode 100644 index 0000000..bfbeb6a --- /dev/null +++ b/src/entregasDesafio/cristiane-reis/horasPorProjeto.test.js @@ -0,0 +1,9 @@ +const { calcularHorasDeProjeto } = require("../../dominio/calculadora/Projeto/horasPorProjeto"); + +describe("Calcular hora de projeto", () =>{ + test("calcular hora de projeto - 1 funcionalidade", () => { + const listaDeFuncionalidades = ['formulario']; + const retornado = 16; + expect(retornado).toBe(retornado); + }); + }); \ No newline at end of file diff --git a/src/entregasDesafio/cristiane-reis/valorHora.teste.js b/src/entregasDesafio/cristiane-reis/valorHora.teste.js new file mode 100644 index 0000000..dfd17d8 --- /dev/null +++ b/src/entregasDesafio/cristiane-reis/valorHora.teste.js @@ -0,0 +1,10 @@ +const {calcularValorPorHora} = require ('../../dominio/calcular/Hora/valorHora'); + +describe("Calcular valor da hora", () =>{ +test("calcular valor da hora - renda mensal 3000", () => { + const retorno = calcularValorPorHora(3000); + const esperado = 10; + expect(esperado).toBe(retorno); + }); + +}); \ No newline at end of file diff --git a/src/entregasDesafio/cristiane-reis/valorProjeto.teste.js b/src/entregasDesafio/cristiane-reis/valorProjeto.teste.js new file mode 100644 index 0000000..ec4ceb9 --- /dev/null +++ b/src/entregasDesafio/cristiane-reis/valorProjeto.teste.js @@ -0,0 +1,63 @@ +const {calcularValorTotalPojeto} = require('../../dominio/calculadora/Projeto/valorProjeto'); +const pacote = require("../../dominio/calculadora/Projeto/pacote"); + +jest.mock('../../dominio/calculadora/Projeto/pacote'); + +describe('pacote basico', () => { + beforeEach(() => { + pacote.calcularPacote.mockReturnValue("pacote_basico") + }); + + test('calcular valor total do projeto quando 30 horas e 30 reais/hora', () => { + const valorHora = 30; + const funcionalidades = ["formulario", "responsividade"]; + const retornado = calcularValorTotalPojeto(funcionalidades, valorHora); + const esperado = 1056 + expect(esperado).toBe(retornado); + }); + test('calcular valor total do projeto quando 30 hora e 30 reais/hora - simulando mock', () =>{ + pacote.calcularPacote.mockReturnValue("pacote_basico"); + const funcionalidades = ["formulario", "responsividade"]; + const retornado = calcularValorTotalPojeto(funcionalidades, valorHora); + const esperado = 1056 + expect(esperado).toBe(retornado); + + }) +}); + +describe('pacote intermediário', () => { + test('calcular valor total do projeto quando 100 horas e 30 reais/hora', () => { + const valorHora = 60; + const funcionalidades = ["formulario", "responsividade"]; + const retornado = calcularValorTotalProjeto(funcionalidades, valorHora); + const esperado = 2016; + expect(retornado).toBe(esperado); + }); + + test('calcular valor total do projeto quando 100 horas e 30 reais/hora - simulando mock', () => { + pacote.calcularPacote = jest.fn().mockReturnValue("pacote_intermediario"); + const valorHora = 100; + const funcionalidades = ["formulario", "responsividade"]; + const retornado = calcularValorTotalProjeto(funcionalidades, valorHora); + const esperado = 3450; + expect(retornado).toBe(esperado); + }); +}); + +describe('pacote premium', () => { + test('calcular valor total do projeto quando 200 horas e 30 reais/hora', () => { + const valorHora = 110; + const funcionalidades = ["formulario", "responsividade"]; + const retornado = calcularValorTotalProjeto(funcionalidades, valorHora); + const esperado = 6900; + expect(retornado).toBe(esperado); +}); +test('calcular valor total do projeto quando 200 horas e 30 reais/hora - simulando mock', () => { + pacote.calcularPacote = jest.fn().mockReturnValue("pacote_premium"); + const valorHora = 30; + const funcionalidades = ["formulario", "responsividade",]; + const retornado = calcularValorTotalProjeto(funcionalidades, valorHora); + const esperado = 6900; + expect(retornado).toBe(esperado); + }); +}); \ No newline at end of file