Arquivo

Arquivo de outubro, 2011

Porque não gosto de usar “should” nos testes de RSpec

23 de outubro de 2011

Desde que li o post RSpec Best Practices de Jared Carroll (post o qual David Chelimsky prefere citar como Good Guidelines) eu prefiro não mais utilizar o termo should para todos os exemplos (testes) de RSpec.

Primeiro que concordo com Jared sobre a redundância da palavra should e como o resultado dos testes ficam mais claros quando rodamos no formato de documentação.

Abaixo dois exemplos (extraídos do post de Jared).

O primeiro usa should:

$ rspec spec/controllers/posts_controller_spec.rb --format documentation

PostsController
  #new
    when not logged in
      should redirect to the sign in page
      should display a message to sign in

Agora eliminando o should e usando o verbo na terceira pessoa:

$ rspec spec/controllers/posts_controller_spec.rb --format documentation

PostsController
  #new
    when not logged in
      redirects to the sign in page
      displays a message to sign in

A segunda razão é a questão gramatical e do sentido dos testes.

O verbo modal should, entre outros significados, pode ser considerado uma obrigação, mas é uma obrigação gentil, cuidadosa, sem muita firmeza.

When not logged in, should redirect to the sign in page.
Quando não logado, deveria redirecionar para a página de login.

Deveria ou deve? Para o teste passar tem que redirecionar para a página de login. Se não redirecionar, o teste falhará. Nessa caso, gramaticalmente, não é melhor usar o verbo modal must, que expressa uma obrigação impreterível?

Então, para ficar simples, uso o verbo na terceira pessoa, evito verbos modais repetitivos e deixo explícito o que o teste está assegurando.

When not logged in, redirects to the sign in page.
Quando não logado, redireciona para a tela de login.

Ruby , ,

8ª Corrida Shopping Aricanduva - 9 km

18 de outubro de 2011

Debaixo de uma chuva fina e constante, neste domingo de 16 de outubro de 2011 corri os 9 km da 8ª Corrida Shopping Aricanduva.

A corrida foi disputada na avenida Aricanduva, com trechos nas vias internas do shopping, em um percurso praticamente plano.

O pessoal da Locamotiva também estava presente.

Mauricio de Amorim, Eu, André Pimentel e Edvaldo Cruz

Mauricio de Amorim, Eu, André Pimentel e Edvaldo Cruz

Um detalhe interessante foi meus tempos total e médio por km foram exatamente os mesmos da corrida de 2009.

Tempo total: 00:43:56

Tempo médio por km: 04:52

Tempo em cada km:

  1. 04:30
  2. 04:46
  3. 04:48
  4. 04:50
  5. 04:59
  6. 04:53
  7. 04:59
  8. 05:15
  9. 04:56

Foto de WebRun

Foto de WebRun

Foto de WebRun

Esportes , , , , ,

[IT Web - Ruby Fundamental] Rocky Mountain Ruby 2011: vídeos disponíveis

9 de outubro de 2011

Rocky Mountain Ruby é uma conferência focada na linguagem de programação Ruby, mesclando palestras técnicas, eventos comunitários e atividades ao ar livre.

Estão disponíveis 27 vídeos da conferência, entre keynotes, palestras e lightning talks.

Veja o post completo no blog Ruby Fundamental:
Rocky Mountain Ruby 2011: vídeos disponíveis

Veja também os outros posts do blog Ruby Fundamental:

Eventos, Ruby , , , , ,