<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Test-Driven Development no Rails: Unit Tests</title>
	<atom:link href="http://simplesideias.com.br/tdd-no-rails-unit-tests/feed/" rel="self" type="application/rss+xml" />
	<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/</link>
	<description></description>
	<pubDate>Thu, 28 Aug 2008 15:21:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
		<item>
		<title>By: Frolim</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-75586</link>
		<dc:creator>Frolim</dc:creator>
		<pubDate>Thu, 24 Jul 2008 15:08:16 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-75586</guid>
		<description>Ficou muito bom!
Finalmente iniciei testes unitários com a sua explicação.
Vlw!</description>
		<content:encoded><![CDATA[<p>Ficou muito bom!<br />
Finalmente iniciei testes unitários com a sua explicação.<br />
Vlw!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simples Idéias. Por Nando Vieira. &#187; Arquivo &#187; Usando o RSpec para testar sua aplicação Rails - Modelos</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-65576</link>
		<dc:creator>Simples Idéias. Por Nando Vieira. &#187; Arquivo &#187; Usando o RSpec para testar sua aplicação Rails - Modelos</dc:creator>
		<pubDate>Mon, 02 Jun 2008 02:13:49 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-65576</guid>
		<description>[...] muito tempo atrás, escrevi um artigo mostrando como testar uma aplicação Rails usando Test::Unit. Muita coisa aconteceu desde então e [...]</description>
		<content:encoded><![CDATA[<p>[...] muito tempo atrás, escrevi um artigo mostrando como testar uma aplicação Rails usando Test::Unit. Muita coisa aconteceu desde então e [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nando Vieira</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-37231</link>
		<dc:creator>Nando Vieira</dc:creator>
		<pubDate>Thu, 15 Nov 2007 19:27:15 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-37231</guid>
		<description>@davi, como eu altero as mensagens-padrão do Rails através do atributo :messages, eu utilizo outra forma para validar tais mensagens. Dá uma olhada nos meus helpers[1], para ver como ficou!

[1] http://pastie.caboo.se/114671</description>
		<content:encoded><![CDATA[<p>@davi, como eu altero as mensagens-padrão do Rails através do atributo :messages, eu utilizo outra forma para validar tais mensagens. Dá uma olhada nos meus helpers[1], para ver como ficou!</p>
<p>[1] <a href="http://pastie.caboo.se/114671" rel="nofollow">http://pastie.caboo.se/114671</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: davi</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-37229</link>
		<dc:creator>davi</dc:creator>
		<pubDate>Thu, 15 Nov 2007 19:05:54 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-37229</guid>
		<description>Excelente artigo, Nando... :-)

Estou usando isso e o Agile Web Development With Rails e estou gostando.

Mas eu vi uma coisa no livro que você não citou (para simplificar?), o Hash default_error_messages do ActiveRecord::Errors:

    @@default_error_messages = {
      :inclusion =&#62; "is not included in the list",
      :exclusion =&#62; "is reserved",
      :invalid =&#62; "is invalid",
      :confirmation =&#62; "doesn't match confirmation",
      :accepted  =&#62; "must be accepted",
      :empty =&#62; "can't be empty",
      :blank =&#62; "can't be blank",
      :too_long =&#62; "is too long (maximum is %d characters)",
      :too_short =&#62; "is too short (minimum is %d characters)",
      :wrong_length =&#62; "is the wrong length (should be %d characters)",
      :taken =&#62; "has already been taken",
      :not_a_number =&#62; "is not a number"
    }

Eu coloquei o seguinte no meu RAILS_ROOT/test/test_helper.rb:

  def assert_activerecord_errors(expected, got, message='')
    assert_equal ActiveRecord::Errors.default_error_messages[expected], got, message
  end

E agora posso testar as mensagens de erro usando um "simples" assert_activerecord_errors :taken, OBJECT.errors.on(:name).


Abraço</description>
		<content:encoded><![CDATA[<p>Excelente artigo, Nando&#8230; :-)</p>
<p>Estou usando isso e o Agile Web Development With Rails e estou gostando.</p>
<p>Mas eu vi uma coisa no livro que você não citou (para simplificar?), o Hash default_error_messages do ActiveRecord::Errors:</p>
<p>    @@default_error_messages = {<br />
      :inclusion =&gt; &#034;is not included in the list&#034;,<br />
      :exclusion =&gt; &#034;is reserved&#034;,<br />
      :invalid =&gt; &#034;is invalid&#034;,<br />
      :confirmation =&gt; &#034;doesn&#039;t match confirmation&#034;,<br />
      :accepted  =&gt; &#034;must be accepted&#034;,<br />
      :empty =&gt; &#034;can&#039;t be empty&#034;,<br />
      :blank =&gt; &#034;can&#039;t be blank&#034;,<br />
      :too_long =&gt; &#034;is too long (maximum is %d characters)&#034;,<br />
      :too_short =&gt; &#034;is too short (minimum is %d characters)&#034;,<br />
      :wrong_length =&gt; &#034;is the wrong length (should be %d characters)&#034;,<br />
      :taken =&gt; &#034;has already been taken&#034;,<br />
      :not_a_number =&gt; &#034;is not a number&#034;<br />
    }</p>
<p>Eu coloquei o seguinte no meu RAILS_ROOT/test/test_helper.rb:</p>
<p>  def assert_activerecord_errors(expected, got, message=&#034;)<br />
    assert_equal ActiveRecord::Errors.default_error_messages[expected], got, message<br />
  end</p>
<p>E agora posso testar as mensagens de erro usando um &#034;simples&#034; assert_activerecord_errors :taken, OBJECT.errors.on(:name).</p>
<p>Abraço</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nome do Jogo &#187; Blog Archive &#187; Vamos falar sobre testes</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-31498</link>
		<dc:creator>Nome do Jogo &#187; Blog Archive &#187; Vamos falar sobre testes</dc:creator>
		<pubDate>Fri, 05 Oct 2007 19:36:24 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-31498</guid>
		<description>[...] aprender mais sobre como funcionam os teste no Rails voc&#xEA; pode clicar aqui e aqui. E lembrem-se: &#34;Quem n&#xE3;o testar &#xE9; mulher do [...]</description>
		<content:encoded><![CDATA[<p>[...] aprender mais sobre como funcionam os teste no Rails voc&#xEA; pode clicar aqui e aqui. E lembrem-se: &quot;Quem n&#xE3;o testar &#xE9; mulher do [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rapha</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-21395</link>
		<dc:creator>rapha</dc:creator>
		<pubDate>Sat, 23 Jun 2007 09:28:41 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-21395</guid>
		<description>Fantástico velho. Acabei de escrever os testes de um projeto aqui, e realmente facilita a vida. Agora eu fico muito mais seguro de implementar qualquer funcionalidade, porque eu sei que posso testar tudo de novo em um instante. :D

Rails sem tdd? Nem a pau!</description>
		<content:encoded><![CDATA[<p>Fantástico velho. Acabei de escrever os testes de um projeto aqui, e realmente facilita a vida. Agora eu fico muito mais seguro de implementar qualquer funcionalidade, porque eu sei que posso testar tudo de novo em um instante. :D</p>
<p>Rails sem tdd? Nem a pau!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diogo Lopes</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-20788</link>
		<dc:creator>Diogo Lopes</dc:creator>
		<pubDate>Tue, 19 Jun 2007 14:23:36 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-20788</guid>
		<description>Parabens cara... nao sei como vim parar aqui, mas estou assinando.
Tem muita gente falando que ABC , XCD , ZZZ é bacana, fundamental, etc... Mas tu mostrou na pratica que vale a pena. 
E tudo em Ruby, que é melhor ainda. (até hj, só tinha visto TDD em JAVA em pt)

abcs!</description>
		<content:encoded><![CDATA[<p>Parabens cara&#8230; nao sei como vim parar aqui, mas estou assinando.<br />
Tem muita gente falando que ABC , XCD , ZZZ é bacana, fundamental, etc&#8230; Mas tu mostrou na pratica que vale a pena.<br />
E tudo em Ruby, que é melhor ainda. (até hj, só tinha visto TDD em JAVA em pt)</p>
<p>abcs!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Renato Elias</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16167</link>
		<dc:creator>Renato Elias</dc:creator>
		<pubDate>Fri, 11 May 2007 18:29:35 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16167</guid>
		<description>Mandou bem nando ! Vlw, como você me falou no "praianha" ruby é babaca de tão fácil =)</description>
		<content:encoded><![CDATA[<p>Mandou bem nando ! Vlw, como você me falou no &#034;praianha&#034; ruby é babaca de tão fácil =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nando Vieira</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16163</link>
		<dc:creator>Nando Vieira</dc:creator>
		<pubDate>Fri, 11 May 2007 18:06:52 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16163</guid>
		<description>@Luciano: Melhor do que isso, você pode fazer algo assim:

assert comment.errors.invalid?(:name), ":name should have had an error\n#{comment.errors.full_messages.to_sentence}"

Você decide como quer fazer! ;)</description>
		<content:encoded><![CDATA[<p>@Luciano: Melhor do que isso, você pode fazer algo assim:</p>
<p>assert comment.errors.invalid?(:name), &#034;:name should have had an error\n#{comment.errors.full_messages.to_sentence}&#034;</p>
<p>Você decide como quer fazer! ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Luciano Pacheco</title>
		<link>http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16162</link>
		<dc:creator>Luciano Pacheco</dc:creator>
		<pubDate>Fri, 11 May 2007 17:30:09 +0000</pubDate>
		<guid isPermaLink="false">http://simplesideias.com.br/tdd-no-rails-unit-tests/#comment-16162</guid>
		<description>def test_should_require_name
    comment = create(:name = nil)
    assert comment.errors.invalid?(:name), ":name should have had an error"
    assert_invalid comment, "Comment shouldn't be created"
  end

":name should have had an error"

Nas mensagens não devemos utilizar mensagens mais explicativa, tipo "name can't be blank" ou algo parecido ? 

Estou perguntando, pois também estou iniciando nesse mundo de XP e TDD. :)

Valeu pelo artigo. ;)</description>
		<content:encoded><![CDATA[<p>def test_should_require_name<br />
    comment = create(:name = nil)<br />
    assert comment.errors.invalid?(:name), &#034;:name should have had an error&#034;<br />
    assert_invalid comment, &#034;Comment shouldn&#039;t be created&#034;<br />
  end</p>
<p>&#034;:name should have had an error&#034;</p>
<p>Nas mensagens não devemos utilizar mensagens mais explicativa, tipo &#034;name can&#039;t be blank&#034; ou algo parecido ? </p>
<p>Estou perguntando, pois também estou iniciando nesse mundo de XP e TDD. :)</p>
<p>Valeu pelo artigo. ;)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
