Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
e8b8863
Update README.md
PedroHMConti Nov 12, 2025
083eac5
commit inicial com projeto rails
jmagnols Nov 12, 2025
7791915
commit inicial, com projeto do rails
jmagnols Nov 12, 2025
dbbdede
Muda nome da pasta 'CAMAAR_proj' para 'src'
fornari03 Nov 15, 2025
b3c04d3
docs: adiciona arquivo de orientações no desenvolvimento ágil/scrum d…
fornari03 Nov 15, 2025
5f5bdb1
spec: adiciona cenários da feature de importar dados do sigaa
fornari03 Nov 15, 2025
d62621e
spec: adiciona cenários da feature de atualizar dados do sigaa
fornari03 Nov 15, 2025
23a8b9e
spec: adiciona cenários da feature de cadastrar usuários do sistema
fornari03 Nov 15, 2025
d3e8eee
spec: adiciona cenários da feature de o usuário definir a senha
fornari03 Nov 15, 2025
01cfda2
spec: adiciona casos em que algum campo está em branco à feature de d…
fornari03 Nov 15, 2025
59ad2e9
spec: adiciona cenários da feature de redefinir senha
fornari03 Nov 15, 2025
e910656
spec: adiciona cenários felizes e tristes para a criação de templates
jmagnols Nov 16, 2025
d38e219
spec: adiciona cenários felizes e tristes para a criação de formulários
jmagnols Nov 16, 2025
53f37bb
spec: adiciona cenários felizes e tristes para a resposta de formulários
jmagnols Nov 16, 2025
ddf5a34
spec: adiciona cenários felizes e tristes para a geração de relatórios
jmagnols Nov 16, 2025
2a784fe
spec: adiciona cenários felizes e tristes para o login de usuário pen…
jmagnols Nov 16, 2025
888252d
spec: adiciona cenários felizes e tristes para a visualização de form…
maetsuji Nov 16, 2025
b237101
spec: adiciona cenários felizes e tristes para a visualização de resu…
maetsuji Nov 16, 2025
9150315
spec: adiciona cenários felizes e tristes para a criação de formulári…
maetsuji Nov 17, 2025
dba7c6f
spec: adiciona validação de campos vazios no template
jmagnols Nov 17, 2025
6d23b46
Merge pull request #6 from fornari03/bdd-criar-template
fornari03 Nov 17, 2025
ea32339
spec: adiciona caso para evitar dados duplicados na importação
fornari03 Nov 17, 2025
927d72f
spec: adiciona cenários de isolamento de turmas por departamento
jmagnols Nov 17, 2025
5aa9e39
Merge pull request #1 from fornari03/bdd/importar-dados-sigaa
jmagnols Nov 18, 2025
53cb6fc
Merge pull request #2 from fornari03/bdd/atualizar-dados-sigaa
jmagnols Nov 18, 2025
be17c43
Merge pull request #16 from fornari03/bdd-restricao-departamento
fornari03 Nov 18, 2025
06c533b
Merge pull request #15 from fornari03/bdd/criar_formulario_user
jmagnols Nov 18, 2025
116fd61
Merge pull request #13 from fornari03/bdd/visualizar-formulario
PedroHMConti Nov 18, 2025
c83e384
Merge pull request #3 from fornari03/bdd/cadastrar-usuarios
jmagnols Nov 18, 2025
bacd660
Merge pull request #9 from fornari03/bdd-gerar-relatorio
PedroHMConti Nov 18, 2025
ac505bb
Merge pull request #7 from fornari03/bdd-criar-formulario
PedroHMConti Nov 18, 2025
b1a5420
Merge pull request #8 from fornari03/bdd-responder-formulario
jmagnols Nov 18, 2025
0b4951d
Merge pull request #10 from fornari03/bdd-login-pendente
fornari03 Nov 18, 2025
f8c1e41
spec: adiciona cenários da feature de visualizar templates
fornari03 Nov 18, 2025
46c93d2
Update visualiza_templates.feature
PedroHMConti Nov 18, 2025
77850b2
adiciona os arquivos editar_templates.feature e editar_templates_step…
PedroHMConti Nov 18, 2025
1ab992e
Update editar_templates_steps.rb
PedroHMConti Nov 18, 2025
0c3ba74
Merge pull request #5 from fornari03/bdd/redefinir-senha-usuario
maetsuji Nov 18, 2025
d621584
Merge pull request #4 from fornari03/bdd/definir-senha-usuario
maetsuji Nov 18, 2025
080819b
spec: corrige alguns cenários e steps a fim de esclarecer a implement…
maetsuji Nov 18, 2025
dd0f8a1
Merge pull request #12 from fornari03/bdd-edita-deleta-templates
maetsuji Nov 18, 2025
39f342b
Merge pull request #14 from fornari03/bdd/visualizar-resultados
jmagnols Nov 19, 2025
b7c46a7
Merge pull request #11 from fornari03/bdd-visualiza-templates
jmagnols Nov 19, 2025
6cae924
spec: adiciona tags @happy_path e @sad_path em todos os cenários bdd
fornari03 Nov 19, 2025
d830df3
refac: move arquivo 'definir_senha_usuario.feature' para pasta featur…
fornari03 Nov 19, 2025
7eb687c
chore: arruma nome do arquivo 'visualizar_form.feature'
fornari03 Nov 19, 2025
035b3f2
Merge pull request #17 from fornari03/refac/adiciona-tags-happy-sad-bdds
maetsuji Nov 19, 2025
61bb36e
Merge pull request #18 from fornari03/sprint-1
fornari03 Nov 26, 2025
3f5ad21
chore: adiciona arquivo .gitignore padrão do Rails
fornari03 Nov 26, 2025
d925e86
fix: retira os arquivos temporários que o git estava rastreando por e…
fornari03 Nov 26, 2025
0e0c6cf
Merge pull request #19 from fornari03/chore/adiciona-gitignore
fornari03 Nov 26, 2025
bb108bc
chore: adiciona o schema.rb inicial do banco de dados
fornari03 Nov 26, 2025
92994fc
config: adiciona gems 'factory_bot_rails' e 'faker' para possível cri…
fornari03 Nov 26, 2025
d4fc738
feat: implementa esqueleto do layout principal e gera controller Home
fornari03 Nov 26, 2025
fcce01c
Merge pull request #20 from fornari03/chore/configuracao-inicial
fornari03 Nov 26, 2025
fe6d303
feat: cria controller do admin e view de gerenciamento
fornari03 Nov 26, 2025
63b5451
refac: cria 'common_steps.rb' para steps que eram declarados em mais …
fornari03 Nov 26, 2025
96619cd
feat: implementa models iniciais do Active Record
jmagnols Nov 29, 2025
2549d0c
fix: implementa models de novo p/ funcionar com o schema
jmagnols Nov 29, 2025
a02798b
merge: resolve problemas de merge do initial-models para a main
fornari03 Nov 29, 2025
bce9caf
Merge pull request #21 from fornari03/initial-models
fornari03 Nov 29, 2025
24ab970
Merge branch 'main' into feat/importar-dados-sigaa
fornari03 Nov 29, 2025
77bace9
chore: retira ambiguidades de um step em vários arquivos
fornari03 Nov 29, 2025
0871231
config: adiciona gem 'bcrypt'
fornari03 Nov 29, 2025
bbec7f5
config: coloca que o plural de materia é materias
fornari03 Nov 29, 2025
13b0652
feat: implementa alguns steps de importar dados do sigaa
fornari03 Nov 30, 2025
57ef077
chore: retira mais ambiguidades de steps
fornari03 Nov 30, 2025
c54ed7d
spec: altera 'importar_dados_sigaa.feature' pra generalizar nomes de …
fornari03 Nov 30, 2025
8d39a03
spec: atualiza importar_dados_Sigaa_steps.rb pra se readequar ao .fea…
fornari03 Nov 30, 2025
c340680
feat: começa a implementar o service de pegar os dados do json
fornari03 Dec 1, 2025
236c5dd
feat: arruma service do sigaa_importer pra passar nos testes rspec
fornari03 Dec 2, 2025
93a06d0
fix: estrutura das turmas de acordo com o json
fornari03 Dec 6, 2025
8f673ac
feat: implementa importar_dados() do AdminController
fornari03 Dec 6, 2025
9a24398
fix: estrutura dos alunos e turmas de acordo com o json class_members
fornari03 Dec 6, 2025
5d50611
feat: implementa com sucesso cenário 'Importação inicial de turma e p…
fornari03 Dec 6, 2025
ec2b5f5
chore: retira ambiguidades de varios arquivos de steps
fornari03 Dec 6, 2025
dd03b43
feat: implementa importação de dados do sigaa com 100% de cobertura n…
fornari03 Dec 6, 2025
b815fb1
chore: retira prints de debug
fornari03 Dec 6, 2025
d31eb4d
feat: implementa funcionalidade de liberar outros botões na tela de g…
fornari03 Dec 6, 2025
95f2897
chore: adiciona a gem tailwindcss para CSS
fornari03 Dec 6, 2025
787c1dd
feat: implementa o style da tela de gerenciamento e o layout de appli…
fornari03 Dec 6, 2025
dd70ece
refac: implementa método 'path_to' em 'common_steps.rb' pra traduzir …
fornari03 Dec 6, 2025
db63b30
chore: atualiza 'atualizar_dados_sigaa.feature' e '.rb' pra retirar t…
fornari03 Dec 6, 2025
4e91d2b
chore: muda 'atualizar_dados_sigaa.feature' pra reduzir quantidade de…
fornari03 Dec 6, 2025
7ba6a77
chore: junta steps de atualizar e importar dados do sigaa em um só ar…
fornari03 Dec 6, 2025
8ba7e24
feat: implementa os steps de atualizar dados do sigaa e muda termo 'd…
fornari03 Dec 6, 2025
3d0e10d
spec: adiciona novos testes no 'sigaa_importer_spec.rb', para atualiz…
fornari03 Dec 6, 2025
86d7739
fix: arruma estruturas das entidades nos testes de atualizar o banco …
fornari03 Dec 6, 2025
899f9f7
feat: atualiza o SigaaImporter pra lidar com as atualizações da impor…
fornari03 Dec 6, 2025
5f0eb7d
spec: atualiza o 'atualiza_dados_sigaa.feature' pra diferenciar turma…
fornari03 Dec 7, 2025
40b6300
feat: começa a reimplementar os steps de atualização dos dados do sig…
fornari03 Dec 7, 2025
cad9e2e
feat: faz alguns testes de atualização de dados passarem
fornari03 Dec 7, 2025
ec7bec7
feat: passa em todos os casos do BDD de atualizar dados do sigaa
fornari03 Dec 7, 2025
284a1c8
spec: atualiza 'importar_dados_sigaa.feature' pra diferenciar turma e…
fornari03 Dec 7, 2025
917933e
feat: atualiza todos (menos um) steps de importar dados
fornari03 Dec 7, 2025
0c70116
chore: retira prints de debug
fornari03 Dec 7, 2025
90bfd48
recriando a feature de login
PedroHMConti Dec 7, 2025
0acd251
Merge pull request #23 from fornari03/feat/importar-dados-sigaa
jmagnols Dec 7, 2025
dd2b744
feat: estrutura da feature dos templates que contempla criação, ediçã…
jmagnols Dec 6, 2025
2ef7ac2
Merge pull request #25 from fornari03/feat/atualizar-dados-sigaa
jmagnols Dec 7, 2025
e471bdf
chore: consolida cucumber steps que estavam ambiguos em common_steps.rb
jmagnols Dec 7, 2025
dec287f
fix: handle mapeamento de página no common_steps e remove duplicados
jmagnols Dec 7, 2025
53b31cb
refac: 'path_to' transforma o nome da página em downcase
fornari03 Dec 7, 2025
55d3baa
fix: resolve pending steps do cucumber e rspec 404
jmagnols Dec 7, 2025
a71a92e
refatorando os testes rspec
PedroHMConti Dec 7, 2025
1fc2efa
spec: atualiza historias de usuario de cadastro
fornari03 Dec 7, 2025
46f88f5
feat: implementação inicial dos steps de cadastrar usuários
fornari03 Dec 7, 2025
0d0d380
feat: PASSA TODOS TESTES DE IMPORTAR/ATUALIZAR. começa implementação …
fornari03 Dec 7, 2025
18fb656
Atualizar modelo Template com validações e escopos
jmagnols Dec 7, 2025
127341c
Atualizar modelo TemplateQuestion com validações e serialização
jmagnols Dec 7, 2025
6bc9cf9
Atualizar TemplatesController com ações CRUD e tratamento de erros
jmagnols Dec 7, 2025
1395fed
Atualizar TemplateQuestionsController com gerenciamento de alternativas
jmagnols Dec 7, 2025
08f400c
Atualizar view de índice de templates
jmagnols Dec 7, 2025
1d31660
Atualizar view de novo template com rótulos corretos
jmagnols Dec 7, 2025
3b3f246
Refinar cenários e passos de criar_template.feature
jmagnols Dec 7, 2025
34261e0
Atualizar editar_templates.feature com expectativas corretas
jmagnols Dec 7, 2025
673ef07
Atualizar rótulos de botões em form_template_creation.feature
jmagnols Dec 7, 2025
4bdf677
Atualizar visualiza_templates.feature
jmagnols Dec 7, 2025
15f74cf
Atualizar passos comuns para navegação de templates
jmagnols Dec 7, 2025
dd41585
Implementar passos para edição de templates e limpeza de opções
jmagnols Dec 7, 2025
502af7e
Remover passos ambíguos em formulario_steps
jmagnols Dec 7, 2025
1b62ac5
Atualizar passos de template com seletores e lógica específicos
jmagnols Dec 7, 2025
f8dc052
Atualizar passos de visualiza_templates
jmagnols Dec 7, 2025
3ca5b9b
Corrigir specs do TemplateQuestionsController
jmagnols Dec 7, 2025
62eda58
mudanças para fazer os testes rodarem
PedroHMConti Dec 7, 2025
4e26efe
feat: implementa envio de email com 'letter-opener' pra abrir aba no …
fornari03 Dec 7, 2025
6d84022
Resolver conflitos de merge com origin/main
jmagnols Dec 7, 2025
941e4e6
feat: passa nos testes BDD de cadastrar usuarios
fornari03 Dec 7, 2025
2b6768c
Adiciona alternativa vazia automaticamente ao mudar tipo para radio/c…
jmagnols Dec 7, 2025
3753dee
feat: passa em todos os testes BDD/TDD de importar/atualizar dados do…
fornari03 Dec 7, 2025
1b665a7
Resolve conflitos de merge com origin/main em feature-login
jmagnols Dec 7, 2025
4125d76
chore: muda 'class_members.json' para reduzir quantidade de alunos na…
fornari03 Dec 7, 2025
14190c8
Merge pull request #26 from fornari03/feature/templates
fornari03 Dec 7, 2025
9fd9936
Merge branch 'main' of https://github.com/fornari03/CAMAAR into feat/…
fornari03 Dec 7, 2025
5045d35
chore: retira obrigatoriedades do campo de senha
fornari03 Dec 8, 2025
e8b5d41
refac: melhora steps de estar em uma pagina
fornari03 Dec 8, 2025
6148e82
feat: faz botão de Editar templates na página de gerenciamento redire…
fornari03 Dec 8, 2025
0a2ba17
fix: botões de editar template e testes de editar
jmagnols Dec 8, 2025
98540bc
feat: modelos e migrações para distribuição de avaliações
jmagnols Dec 8, 2025
aef0731
feat: controllers para distribuição e pendencias
jmagnols Dec 8, 2025
e1bf49f
test: cenários bdd para distribuição e pendencias
jmagnols Dec 8, 2025
02d6c70
refac: remove coluna respondido e usa data_submissao timestamp
jmagnols Dec 8, 2025
b67f6c2
feat: move logica dos formularios para namespace admin
jmagnols Dec 8, 2025
682148b
test: update/add cenários do cucumber para distribuir forms e forms p…
jmagnols Dec 8, 2025
a13a147
fix: corrige request pra rota home
fornari03 Dec 9, 2025
1c10234
feat: implementa alguns steps de autenticação
fornari03 Dec 9, 2025
e82ea13
Merge commit '1b665a7aac428f07b08fcc641f541d701f5b0597' into Sprint-2
fornari03 Dec 9, 2025
e9788d3
fix: arruma telas de login e tela geral da aplicação
fornari03 Dec 9, 2025
6ce193e
feat: implementa a autenticação
fornari03 Dec 9, 2025
31170ff
feat: redireciona admin para pagina de gerenciamento após o login
fornari03 Dec 9, 2025
c7771fc
feat: implementa o passo de estar logado como admin finalmente
fornari03 Dec 9, 2025
467a44f
fix: desmocka autenticação pra cenario de criação de template
fornari03 Dec 9, 2025
fcfaaf0
feat: começa a implementar os steps de definição de senha
fornari03 Dec 9, 2025
af30dd5
feat: cria controller de definição de senha
fornari03 Dec 9, 2025
d6d9f01
spec: define tests rspec pra definição de senha
fornari03 Dec 9, 2025
ac1b6c2
feat: atualiza mailer e controller pra usar o token na url
fornari03 Dec 9, 2025
25d3303
refac: alguns steps de diversos arquivos
fornari03 Dec 9, 2025
0533009
feat: finaliza feature de definir senha
fornari03 Dec 9, 2025
61fd55d
test: adiciona testes unitários, de controller e cenários BDD para re…
jmagnols Dec 9, 2025
e67bad7
fix: corrige mapeamento de tabelas, associações e definições de passo…
jmagnols Dec 9, 2025
73a5316
feat: implementa controladores e views para responder formulários e v…
jmagnols Dec 9, 2025
ee813d4
feat: adiciona views de criação de formulários para admin
jmagnols Dec 9, 2025
3002b3b
Merge pull request #30 from fornari03/feat/definir-senha
jmagnols Dec 9, 2025
e2d0d53
fix: resolve conflitos de merge na branch feature-responder-formulari…
jmagnols Dec 9, 2025
e81ad40
chore: remove validação de tamanho mínimo de senha
jmagnols Dec 10, 2025
7f23050
refactor: consolida steps duplicados e remove ambiguidades
jmagnols Dec 10, 2025
8e8a369
fix: corrige mapeamentos de role e tipo de questão em responder_steps
jmagnols Dec 10, 2025
84ba260
fix: adiciona aspas em 'Alterar Senha' no feature de definir senha
jmagnols Dec 10, 2025
deba22a
feat: implementa dashboard de formulários pendentes e respondidos
jmagnols Dec 10, 2025
308b1ef
fix: atualiza label de login e usa Usuario.authenticate
jmagnols Dec 10, 2025
dafd0c2
fix: corrige associação label-input em respostas/new.html.erb
jmagnols Dec 10, 2025
5e97f83
feat: adiciona verificação de expiração e melhora visualização de res…
jmagnols Dec 10, 2025
3dd5414
fix: corrige feature de responder formulário e dashboard de pendências
jmagnols Dec 10, 2025
66e1104
Merge pull request #31 from fornari03/feature/responder-formularios
jmagnols Dec 10, 2025
95f86ce
feat: começa a implementar os steps da feature de redefinir senha
fornari03 Dec 11, 2025
7f2fa47
refac: cria partials pra telas de definição e redefinição de senha
fornari03 Dec 9, 2025
83adf6f
feat: adiciona botão e rotas de 'esqueci a senha'
fornari03 Dec 9, 2025
ec3025d
spec: cria testes rspec para redefinição de senha
fornari03 Dec 9, 2025
860eaa0
feat: cria controller e routes de redefinir senha
fornari03 Dec 10, 2025
dc83a36
feat: cria método de redefinição de senha no user mailer
fornari03 Dec 10, 2025
578cbb1
fix: botão de esqueci a senha é um button e não mais link_to
fornari03 Dec 10, 2025
1a729ff
feat: atualiza controller de redefinicao de senha e cria corpo do ema…
fornari03 Dec 10, 2025
0123d8f
feat: atualiza spec de redefinição de senha e adiciona o spec de user…
fornari03 Dec 10, 2025
54ac5ce
fix: incongruencias dadas pelos cherry-picks
fornari03 Dec 11, 2025
af3ff94
feat: passa nos testes cucumber de autenticacao
fornari03 Dec 11, 2025
4b51367
chore: retira rspecs gerados automaticamente que não são úteis e ajus…
fornari03 Dec 11, 2025
97ff3b4
Merge pull request #32 from fornari03/feat/redefinir-senha-2
jmagnols Dec 11, 2025
77f2382
feat: cria formularios_controller e implementa steps de criar formulario
fornari03 Dec 11, 2025
5fd8a79
refac: migra arquivos de 'views/admin/formularios' para 'views/formul…
fornari03 Dec 11, 2025
dca86e9
feat: atualiza controller e views de criar formularios
fornari03 Dec 12, 2025
c60abab
fix: arruma visualizar resultados
fornari03 Dec 12, 2025
6b1d3b6
fix: arruma distribuição de avaliações
fornari03 Dec 12, 2025
4b19c2f
fix: visualização de formularios
fornari03 Dec 12, 2025
096c247
fix: geração de relatório de formulário
fornari03 Dec 12, 2025
f2a92e3
fix: specs de formularios e controller de resultados
fornari03 Dec 12, 2025
74039b1
fix: coloca time zone de brasilia na aplicação
fornari03 Dec 12, 2025
b073ad0
Merge pull request #33 from fornari03/fix/features-pendentes
jmagnols Dec 12, 2025
e2c4d07
fix: coloca botão de esqueci a senha embaixo do de entrar
fornari03 Dec 12, 2025
105bffd
fix: usuario não é mais deletado, é desativado; melhora disposição de…
fornari03 Dec 12, 2025
ab9d442
fix: arruma botões da sidebar
fornari03 Dec 12, 2025
94a512d
fix: responder formulario mostra perguntas de novo
fornari03 Dec 12, 2025
25a77e9
refac: cria método de mostrar nome completo da turma (com nome da mat…
fornari03 Dec 14, 2025
29781ee
feat: implementa logout
fornari03 Dec 14, 2025
06bfd85
fix: arruma erros nos htmls
fornari03 Dec 14, 2025
edd1e77
Merge pull request #34 from fornari03/fix/ajustes-na-UI
fornari03 Dec 14, 2025
5ec5c7b
config: adiciona gem SimpleCov
fornari03 Dec 14, 2025
9c75831
fix: bug no botão de resultados
fornari03 Dec 14, 2025
8bb4ddc
test: cobre 100% dos controllers de formularios, respostas, template_…
fornari03 Dec 14, 2025
0310d0d
chore: retira código morto de reload_view_data() no FormulariosContro…
fornari03 Dec 14, 2025
e4a9c6d
test: cobre 100% dos rspecs de todos os controllers
fornari03 Dec 14, 2025
93f3cef
test: cobre 100% dos rspecs de todas as models, services e jobs
fornari03 Dec 14, 2025
08cd728
Merge pull request #35 from fornari03/chore/cobertura-rspec-simplecov
jmagnols Dec 14, 2025
652840e
config: adiciona gems rubycritic e flog
fornari03 Dec 14, 2025
aa4ea26
refac: create e verifica_participacao de RespostasController
fornari03 Dec 14, 2025
c6c60e7
refac: update de TemplateQuestionsController
fornari03 Dec 14, 2025
17ccf36
refac: show e generate_csv de ResultadosController
fornari03 Dec 14, 2025
18ca658
refac: create de FormulariosController
fornari03 Dec 14, 2025
473b3db
refac: create de DefinicaoSenhaController
fornari03 Dec 14, 2025
0dfe727
refac: create e update de RedefinicaoSenhaController
fornari03 Dec 14, 2025
d0a86cf
refac: create de AutenticacaoController
fornari03 Dec 14, 2025
bae9d4b
refac: index de HomeController
fornari03 Dec 14, 2025
f21cd77
refac: separa SigaaImporter.call em alguns métodos
fornari03 Dec 14, 2025
ad85782
refac: process_definitions do SigaaImporter
fornari03 Dec 14, 2025
5d16022
refac: process_enrollments do SigaaImporter
fornari03 Dec 14, 2025
a4a5f5f
fix: resolve_user_from_token de DefinicaoSenhaController quando o tok…
fornari03 Dec 14, 2025
e424965
test: cria mais dois testes rspec para cobrir novas linhas criadas pe…
fornari03 Dec 15, 2025
ab8bee5
Merge pull request #36 from fornari03/refac/reducao-abc-score
jmagnols Dec 15, 2025
38e7979
refac: steps de importar/atualizar dados do sigaa e cadastrar usuarios
fornari03 Dec 15, 2025
aa8fb9e
refac: steps de gerar relatório e template
fornari03 Dec 15, 2025
f4bafd9
refac: todos os step definitions têm ABC Score < 20
fornari03 Dec 15, 2025
b0d0aea
refac: reorganiza os steps nos arquivos, separando em seções Dado, Qu…
fornari03 Dec 15, 2025
bc824ea
Merge pull request #37 from fornari03/refac/abc-score-steps
jmagnols Dec 15, 2025
7944853
build: adiciona gem rdoc para documentação
jmagnols Dec 15, 2025
898fe1f
docs: documenta Models com padrão RDoc
jmagnols Dec 15, 2025
ddd608e
docs: documenta Service SigaaImporter com RDoc
jmagnols Dec 15, 2025
8d4caec
docs: documenta Helpers, Mailers e Jobs com RDoc
jmagnols Dec 15, 2025
eeaa528
docs: documenta Controllers com RDoc detalhando fluxos e variáveis
jmagnols Dec 15, 2025
0297792
docs: atinge 100% de cobertura de documentação
jmagnols Dec 15, 2025
741d727
docs: add rdoc nos request specs
jmagnols Dec 15, 2025
16c8460
docs: add rdoc nos model specs
jmagnols Dec 15, 2025
d0b980d
docs: add rdoc nos controller specs
jmagnols Dec 15, 2025
c1de800
docs: add rdoc nos factory specs
jmagnols Dec 15, 2025
e06dd81
docs: add rdoc nos service job e mailer specs
jmagnols Dec 15, 2025
15af569
docs: add rdoc nos helpers de spec
jmagnols Dec 15, 2025
7418346
docs: add rdoc nos helpers do cucumber
jmagnols Dec 15, 2025
17b768d
docs: add rdoc nos step definitions
jmagnols Dec 15, 2025
8c1e4b3
Merge pull request #38 from fornari03/docs/documentacao-rdoc
fornari03 Dec 16, 2025
507a391
atualiza readme
fornari03 Dec 16, 2025
7e87b23
atualiza readme
fornari03 Dec 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
90 changes: 90 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead.
# git config --global core.excludesfile '~/.gitignore_global'

# Ignore bundler config.
/.bundle
/src/.bundle

# Ignore all logfiles and tempfiles.
/log/*
/src/log/*
/tmp/*
/src/tmp/*
!/log/.keep
!/src/log/.keep
!/tmp/.keep
!/src/tmp/.keep

# Ignore pidfiles, but keep the directory.
/tmp/pids/*
/src/tmp/pids/*
!/tmp/pids/
!/src/tmp/pids/
!/tmp/pids/.keep
!/src/tmp/pids/.keep

# Ignore storage (uploaded files in development and any SQLite databases).
/storage/*
/src/storage/*
!/storage/.keep
!/src/storage/.keep
/tmp/storage/*
/src/tmp/storage/*
!/tmp/storage/
!/src/tmp/storage/
!/tmp/storage/.keep
!/src/tmp/storage/.keep

/public/assets
/src/public/assets
.byebug_history

# Ignore master key for decrypting credentials and more.
/config/master.key
/src/config/master.key

/db/*.sqlite3
/src/db/*.sqlite3
*.sqlite3-journal
*.sqlite3-wal
*.sqlite3-shm

# Ignore all environment files (except templates).
/.env
/src/.env
/.env.production
/src/.env.production
/.env.development
/src/.env.development
/.env.test
/src/.env.test

# Ignore some generated files
/coverage
/src/coverage
/public/packs
/src/public/packs
/public/packs-test
/src/public/packs-test
/node_modules
/src/node_modules
/yarn-error.log
/src/yarn-error.log
.yarn/
/src/.yarn/
.yarnrc.yml
/src/.yarnrc.yml

# Ignore Mac and Linux file system files
*.swp
.DS_Store

# Ignore vendor/bundle
/vendor/bundle
/src/vendor/bundle

# Ignore simplecov
coverage
137 changes: 137 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
# Guia de Contribuição - Projeto CAMAAR (Grupo 4)

### Integrantes:
- Guilherme Fornari
- João Magno
- Pedro Conti
- Rodrigo Rafik

Este documento define as regras e o fluxo de trabalho que todos os membros do grupo devem seguir para garantir a organização e a qualidade do nosso projeto.

## 1. Papéis (Scrum)

Teremos dois papéis rotativos:

* **Product Owner (PO):** Responsável por ser a "voz do cliente", priorizar as User Stories (Issues) no backlog e validar as entregas.
* **ScrumMaster (SM):** Responsável por remover impedimentos, garantir que o time siga o processo (incluindo este guia) e proteger a equipe de distrações.

## 2. Nomenclatura de Branches

Toda nova tarefa, seja ela um BDD, uma feature ou um bugfix, **deve** ser feita em sua própria branch. **Nunca faça commits diretamente na `master` ou em branches de sprint**.

**Padrão:** `tipo/nome-da-tarefa`

### Tipos de Branch

* **`bdd/`**: Usado para escrever arquivos de especificação (`.feature`) do Cucumber.
* *Exemplo:* `bdd/login-de-usuario`
* *Exemplo:* `bdd/gerar-relatorio`

* **`feature/`**: Usado para implementar novas funcionalidades (o código da aplicação).
* *Exemplo:* `feature/login-de-usuario`

* **`fix/`**: Usado para corrigir bugs em funcionalidades existentes.
* *Exemplo:* `fix/erro-no-login-com-email`

* **`docs/`**: Usado para alterações na documentação (Wiki, README, etc.).
* *Exemplo:* `docs/atualiza-instrucoes-do-guia`

## 3. Nomenclatura de Commits

Para manter o histórico do Git limpo e legível, usaremos prefixos nos nossos commits.

**Padrão:** `prefixo: Mensagem clara do que foi feito.`

### Prefixos de Commit

* **`spec:`**: (Para Sprint 1) Adição ou modificação de arquivos de especificação BDD (`.feature`).
* *Exemplo:* `spec: Adiciona cenários feliz e triste para login de usuário`

* **`feat:`**: (Sprints futuras) Adição de uma nova funcionalidade (código).
* *Exemplo:* `feat: Implementa rota e controller para login`

* **`fix:`**: (Sprints futuras) Correção de um bug.
* *Exemplo:* `fix: Corrige validação de senha no login`

* **`refac:`**: Alteração de código que não corrige bug nem adiciona feature.
* *Exemplo:* `refact: Remove código duplicado do controller de usuário`

* **`docs:`**: Alterações na documentação.
* *Exemplo:* `docs: Atualiza wiki com novo fluxo de PR`

* **`style:`**: Alterações de formatação, lint, etc. (sem mudança lógica).
* *Exemplo:* `style: Aplica formatação do RuboCop`

## 4. Fluxo de Trabalho (Workflow)

Este é o processo-padrão para **todas** as contribuições.

### Passo 1: Início da Tarefa

1. **Sincronize sua `master` local** com a `master` do fork do grupo:
```bash
git checkout main
git pull origin main
```
2. **Crie sua nova branch** a partir da `master` usando a nomenclatura correta:
```bash
git checkout -b bdd/nome-da-minha-tarefa
```

### Passo 2: Trabalho Local

1. Faça seu trabalho.
2. Faça seus commits usando a nomenclatura correta:
```bash
git add .
git commit -m "spec: Adiciona cenário feliz para minha tarefa"
```
3. Envie sua branch para o repositório (fork do grupo):
```bash
git push origin spec/nome-da-minha-tarefa
```

### Passo 3: Pull Request (PR)

1. No GitHub, abra um **Pull Request**.
2. Preencha o template do PR (veja seção 6).
3. **Importante:** Atribua pelo menos **um colega** do grupo como "Reviewer".
4. O PR **não deve** ser "mergeado" até que o Reviewer aprove.

## 5. Fluxo Específico: Sprint 1 (Entrega BDD)

Para a entrega da Sprint 1, o fluxo tem uma particularidade:

1. O **ScrumMaster (SM)** criará uma branch chamada `sprint-1` a partir da `main` do fork do grupo.
2. **Todos os membros** seguem o **Passo 1 e 2** da seção 4 (criando suas branches `bdd/` a partir da `main`).
3. **Pull Request (Interno):** Ao abrir o Pull Request (Passo 3), a **base** (branch de destino) **NÃO** será a `main`, mas sim a branch `sprint-1`.
* **De:** `bdd/login-de-usuario`
* **Para:** `sprint-1`
4. Após todos os PRs serem revisados e mergeados na `sprint-1`, um membro (ex: SM) fará o **Pull Request Final** para o professor:
* **De:** `nosso-fork/sprint-1`
* **Para:** `EngSwCIC/CAMAAR:main`

## 6. Fluxo Específico: Sprints Futuras (Implementação)

Após a Sprint 1, nosso fluxo voltará ao normal:

* **De:** `feature/nome-da-feature`
* **Para:** `main` (do fork do grupo)

A `main` do nosso fork será a nossa base de código estável.

## 7. Template de Pull Request

Ao criar um Pull Request, use este template na descrição.

```markdown
### O que foi feito?
(Descreva em poucas linhas o que este PR entrega. Ex: "Implementa os cenários BDD para a feature de Login de Usuário".)

### Como testar?
(Descreva os passos para o "Reviewer" validar seu trabalho. Ex: "1. Leia o arquivo `features/login.feature` e verifique se os cenários feliz e triste estão presentes.")

### Issue Relacionada
(Link para a User Story/Issue do GitHub que este PR resolve.)

- Resolve #[número_da_issue]
113 changes: 111 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,111 @@
# CAMAAR
Sistema para avaliação de atividades acadêmicas remotas do CIC
# CAMAAR - Sistema de Gestão Acadêmica

Este projeto utiliza **Ruby on Rails 8** e **SQLite**.

## Pré-requisitos

* **Ruby:** Versão 3.2.0 ou superior (Requisito do Rails 8).
* **Bundler:** Para gerenciar as dependências.
* **SQLite3:** Banco de dados utilizado.

## Instalação

1. **Instale as dependências:**
```bash
bundle install
```

2. **Configuração do Banco de Dados:**
Execute o comando para criar o banco e rodar as migrações:
```bash
rails db:setup
```

---

## ⚠️ Configuração do Usuário Administrador

Para acessar o sistema como administrador, você deve verificar se já existe um usuário criado ou criar um manualmente via terminal, conforme os cenários abaixo.

### Passo 1: Acesse o Console do Rails
No terminal, na raiz do projeto, execute:
```bash
rails console
````

### Passo 2: Verifique se já existe um Admin

Dentro do console, execute o comando abaixo para buscar um administrador:

```ruby
admin = Usuario.where(ocupacao: 'admin').first
puts admin ? "Email encontrado: #{admin.email}" : "Nenhum admin encontrado."
```

### Passo 3: Decida o fluxo com base no resultado

#### **Cenário A: Nenhum admin encontrado**

Ainda dentro do console, copie e cole o código abaixo para criar um novo administrador:

```ruby
Usuario.create!(
nome: "Administrador",
email: "admin@test.com",
usuario: "admin",
matricula: "000000",
password: "password123",
password_confirmation: "password123",
ocupacao: :admin,
status: true
)
```

*Agora você pode logar com o email `admin@test.com` e a senha `password123`.*

#### **Cenário B: Admin encontrado (Recuperação de Senha)**

Se o console retornou um usuário (ex: `admin@test.com`) mas você não sabe a senha:

1. Copie o e-mail retornado no console.
2. Saia do console (digite `exit`).
3. Inicie o servidor (veja a seção "Rodando a Aplicação" abaixo).
4. Acesse a tela de login no navegador.
5. Clique em **"Esqueci minha senha"**.
6. Insira o e-mail do administrador.
7. O sistema utiliza a gem `letter_opener`. Uma nova aba abrirá automaticamente no seu navegador contendo o e-mail simulado com o link de redefinição.
8. Clique no link, defina uma nova senha e faça o login.

-----

## Rodando a Aplicação

Para iniciar o servidor web:

```bash
rails s
```

Acesse a aplicação em: [http://localhost:3000](https://www.google.com/search?q=http://localhost:3000)

## Rodando os Testes

O projeto conta com testes unitários (RSpec) e de aceitação (Cucumber).

* **RSpec:**

```bash
bundle exec rspec
```

* **Cucumber:**

```bash
bundle exec cucumber
```

* **Verificar Qualidade (RubyCritic):**

```bash
bundle exec rubycritic
```
Loading