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