Neste projeto simulamos um sistema de relatório de um zoológico, onde desenvolvemos um conjunto de funções capazes de recuperar informações sobre os animais, os colaboradores, horários de funcionamento e uma tabela de preços que varia de acordo com a idade dos visitantes de um zoológico.
No desenvolvimento deste projeto colocamos em prática novas funcionalidades do ES6, como arrow functions
, template literals
, spread operator
, parâmetros rest
e object destructuring
, além da manipulação de arrays com as funções map
, filter
e reduce
. Também foram implementados testes com jest
utilizando a prática do TDD - TestDriven Development.
- Para acessar o projeto faça o clone do repositório.
- No terminal utilize o comando:
git clone git@github.com:JorgeCase/jorge-case-zoo-functions-project.git
- Entre na pasta do repositório que você acabou de clonar:
cd jorge-case-zoo-functions-project.git
- Instale as dependências com o comando
npm install
O projeto finaliza a Seção 7 - Métodos de Array do Módulo de Fundamentos e foi um projeto com quatorze requisitos obrigatórios e dois requisitos optativos. Neste projeto obtive 100% de aprovação.
Lista de requisitos obrigatórios:
- Crie uma função que busca as espécies de animais por id.
- Crie uma função que verifica se todos os animais de uma espécie possuem a idade mínima especificada
- Crie uma função que busca as pessoas colaboradoras a partir do primeiro ou último nome
- Crie a gestão das pessoas colaboradoras de acordo com o respectivo gerente
- Crie uma função que realiza a contagem dos animais de cada espécie
- Implemente os testes necessários para obter ao menos 80% de cobertura na função
handlerElephants
- Implemente os testes necessários para obter ao menos 90% de cobertura na função
handlerElephants
- Crie o cálculo total do preço de entrada
- Crie o agendamento que disponibilize as informações de horário dos animais com o dia que os animais estão disponíveis
- Crie uma função que busca o animal mais velho da primeira espécie gerenciada
- Crie uma associação de informações para cobertura das pessoas colaboradoras
- Implemente os testes necessários para obter ao menos 85% de cobertura na função
getOpeningHours
- Implemente os testes necessários para obter ao menos 95% de cobertura na função
getOpeningHours
- Crie um mapeamento geográfico das espécies e seus animais
Lista de reqisitos optativos:
- Implemente os testes necessários para obter 100% de cobertura na função
handlerElephants
- Implemente os testes necessários para obter 100% de cobertura na função
getOpeningHours