trilhos 4 has_secure_password processar confirmação de senha opcional

com trilhos 4 eu usohas_secure_password no meu modelo de usuário, o truque diz que se eu não definir o: password_confirmation ele nunca será acionado, mas por que quando eu executo o teste eu recebo o erro:Confirmação de senha não pode ficar em branco como o seguinte :

Failures:

1) User 
 Failure/Error: it { should be_valid }
   expected #<User id: nil, name: "joe", email: "[email protected]", created_at: nil, 
   updated_at: nil, password_digest: "$2a$04$mcRr/msgYQR3kBVc3kv/m.UotBJuJuSXZKMw
   /eHTvU87..."> to be valid, but got errors: Password confirmation can't be blank

meu arquivo de teste se parece com:

require 'spec_helper'

describe User do

   before { @user = User.new(name: 'joe', email: '[email protected]', password: 'foo') }

   subject { @user }
   #....
   #....
   describe "when password is not present" do
     before { @user.password = "" }
     it { should_not be_valid }
   end
end

Por que eu recebo este erro, existe uma solução para isso? obrigado

questionAnswers(3)

yourAnswerToTheQuestion