MouseOver Studio

MouseOver Studio header image 2

Remarkable Extensions: mais matchers para teus testes!

August 8th, 2009 por Diego Carrion · Sem comenários

O Remarkable Extensions é um plugin para o Remarkable com matchers que não foram inclusos no repositório oficial.

O motivo para os matchers não serem inclusos no repositório oficial é que dependendo do caso, podem não ser considerados BDD.

Eu acredito que não importa saber se teus testes são BDD, TDD ou o que for e sim entregar para o cliente uma especificação executável do que ele esta comprando, entre outras coisas.

No meu caso, estávamos trabalhando numa aplicação com serviços que eram consumidos por uma segunda aplicação e o business owner pediu para que tal recurso não tenha a ação de delete, pelo que foi criado o matcher have_action:

should_not_have_action :delete

Em outra oportunidade, o business owner me indicou que outro recurso somente podia ser editado e deletado pelo owner dele, pelo que chegamos na conclusão que devíamos filtrar os usuários que não tinham criado o mesmo e foi criado o matcher have_before_filter:

should_have_before_filter :require_owner, :only => [:edit, :destroy]

que na especificação ficou como:

should require owner before edit, destroy

e que o cliente entendeu perfeitamente.

Um terceiro matcher no plugin é have_after_filter.

Queria agradecer ao Jose Valim da Plataforma que me ajudou com uns códigos.

Se gostou do plugin, considera me recomendar no Working With Rails e para mais novidades não deixe de me seguir no Twitter.

Tags: Remarkable · Remarkable Extensions · Remarkable Plugins · rspec · rspec-rails

0 respostas ate agora ↓

  • Todavia não existem comentários... Arrasa preenchendo o formulário embaixo.

Deixar um comentário