No seguinte livro:
http://manuals.rubyonrails.com/read/chapter/27#page70
[code]class SecretAgent < Test::Unit::TestCase
fixtures :secret_agents
ensure the SecretAgent plays well with the database
def test_create_read_update_delete
jimmy = SecretAgent.new(“jagent”, “unbelievablysecretpassword”)
assert jimmy.save
agent = SecretAgent.find(jimmy.id)
assert_equal jimmy.username, agent.username[/code]
Isto pode ser chamado de teste unitário, mesmo testando também o banco de dados?
cv1
#2
Se ele nao estiver testando nenhuma unidade do seu sistema alem de SecretAgent, pq nao?
Certo, Obrigado.
Uma suposição: se por acaso SecretAgent tivesse:
class SecretAgent < ActiveRecord::Base
has_many :weapons
end
O uma chamada ao método ‘save’ de uma instância de SecretAgent implicaria em chamadas ao ‘save’ de outras classes. Como seria o teste unitário?
cv1
#4
Voce poderia mockar Weapon e garantir que save foi chamado nelas. Da uma olhada no mocha, rspec pra Ruby ou JMock e EasyMock pra Java.