egoista / vagas-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

README

Projeto criado para o desafio da Vagas.com

Instalação

Instale as dependencias

$ bundle

Inicialize o banco

$ rails db:create db:migrate db:seed

Testes

Para rodas todos os testes:

$ rspec

Considerações

  • Para o calculo da distancia foi implementado o algoritmo de Dijkstra.
  • Foi criado o concern ExperienceLevel para o comportamento de Níveis de experiência das classes Person e JobOpportunity
  • Tratamentos de erros comum a todas as controllers foram adicionados a ApplicationController

Melhorias

  • Usar fila com prioridade para o algoritmo de Dijkstra para melhorar a performance.
  • Criar a entidade Company para relacionar as vagas, e ter uma visão de todas as vagas de uma determinada empresa.
  • Usar shared_context para os testes job_application_spec.

Gems adicionadas

  • rspec-rails substitui o framework de teste padrão por rspec
  • rspec-json_expectations matchers para json, usado para testar as repostas da api
  • factory_bot_rails usada para definir e criar entidades de forma mais simples, usado para testes
  • faker usada para criar dados para as entidades de forma dinamica

Referencias

About


Languages

Language:Ruby 99.6%Language:HTML 0.4%