Zero Generators
Coletânea de geradores de código para Rails que eu acabo tendo que incluir em todos os projetos que desenvolvo, e acabei por decidindo criar um plugin.
Geradores
Basicamente, os geradores são:
-
tdd_model, tdd_controller - Geradores que geram “stubs” de testes, em formato RSpec.
-
tdd_scaffold - Gerador para um teste, em RSpec, de um scaffold padrão do Rails. Evita stubs sempre que possível.
-
tdd_scaffold_stub - Gerador para um teste, em RSpec, de um scaffold padrão do Rails, usando stubs
sempre que possível (tenta imitar o formato padrão do spec_scaffold, porém em português).
-
factory_scaffold - Gerador para um teste, em RSpec, de um scaffold padrão porém usando fixtures.
Utiliza stubs, porém a idéia é ser fácil de retirar estes stubs se for necessário.
-
layout - Cria um layout, inclusive com o arquivo pt_BR.yml.
-
ferret_scaffold - Cria um Scaffold usando Ferret.
NOTA
Estes geradores são altamente “opinados” - todos os geradores que geram também testes usam a sintaxe do RSpec, e todos os testes evitam stubs. Na minha concepção, não existe “unit-test” em Controller (e, na verdade, o BDD meio que surgiu para evitar a idéia de “unit-test”) portanto isolar o Controller da Model, em testes, não parece fazer sentido. Isso faz com que uma alteração na Model muitas vezes quebre testes no Controller, mas sejamos sinceros, se isso acontecer é porque provavelmente o seu Controller está com bugs mesmo, e se o teste não serve para capturar isso, qual o uso dele?
Este é um projeto em andamento, e provavelmente com o tempo o número de geradores aumentará bastante.
Exemplos
Copyright © 2009 Maurício Szabo, desenvolvido sobre a Artistic License - versão 2.0