<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Useful helpers for RSpec mocks</title>
	<atom:link href="http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/feed/" rel="self" type="application/rss+xml" />
	<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/</link>
	<description>In my blog I'll try to describe about interesting technologies, my discovery in IT and some useful things about programming.</description>
	<lastBuildDate>Tue, 29 Dec 2009 10:34:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: vitaly</title>
		<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/#comment-250365</link>
		<dc:creator>vitaly</dc:creator>
		<pubDate>Thu, 18 Mar 2010 17:45:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/#comment-250365</guid>
		<description>Спасибо, полезная статья :) Я как раз пытаюсь изучать rspec =)</description>
		<content:encoded><![CDATA[<p>Спасибо, полезная статья :) Я как раз пытаюсь изучать rspec =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmytro Shteflyuk</title>
		<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/#comment-201053</link>
		<dc:creator>Dmytro Shteflyuk</dc:creator>
		<pubDate>Thu, 18 Mar 2010 15:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/#comment-201053</guid>
		<description>Нужно еще добавить строчку

[cc lang=&quot;ruby&quot;]
@comment.stub!(:is_valid?, false)
[/cc]

Либо передать ее в &lt;tt&gt;mock_model&lt;/tt&gt;

[cc lang=&quot;ruby&quot;]
@comment = mock_model(Comment, :user =&gt; nil, :is_valid? =&gt; false)
[/cc]

Когда используется &lt;tt&gt;mock_model&lt;/tt&gt;, создается не полноценная модель, а только ее &quot;тень&quot;. Потому специфические методы нужно стабить руками.</description>
		<content:encoded><![CDATA[<p>Нужно еще добавить строчку</p>
<div class="codecolorer-container ruby twitlight" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color:#0066ff; font-weight:bold;">@comment</span>.<span style="color:#9900CC;">stub</span>!<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:is_valid</span>?, <span style="color:#0000FF; font-weight:bold;">false</span><span style="color:#006600; font-weight:bold;">&#41;</span></div></td></tr></tbody></table></div>
<p>Либо передать ее в <tt>mock_model</tt></p>
<div class="codecolorer-container ruby twitlight" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color:#0066ff; font-weight:bold;">@comment</span> = mock_model<span style="color:#006600; font-weight:bold;">&#40;</span>Comment, <span style="color:#ff3333; font-weight:bold;">:user</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">nil</span>, <span style="color:#ff3333; font-weight:bold;">:is_valid</span>? <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">false</span><span style="color:#006600; font-weight:bold;">&#41;</span></div></td></tr></tbody></table></div>
<p>Когда используется <tt>mock_model</tt>, создается не полноценная модель, а только ее &#8220;тень&#8221;. Потому специфические методы нужно стабить руками.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Антон</title>
		<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/#comment-201040</link>
		<dc:creator>Антон</dc:creator>
		<pubDate>Thu, 18 Mar 2010 15:34:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/#comment-201040</guid>
		<description>А как быть с проверкой модели на валидность? Я попробовал такой код:

&lt;code lang=&quot;ruby&quot;&gt;
  it &quot;should be invalid withoud user&quot; do
    @comment = mock_model(Comment, :user =&gt; nil)
    @comment.should_not be_valid
  end
&lt;/code&gt;

и получил ответ, что сообщение :valid? неизвестно объекту @comment.</description>
		<content:encoded><![CDATA[<p>А как быть с проверкой модели на валидность? Я попробовал такой код:</p>
<div class="codecolorer-container ruby twitlight" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; it <span style="color:#996600;">&quot;should be invalid withoud user&quot;</span> <span style="color:#9966CC; font-weight:bold;">do</span><br />
&nbsp; &nbsp; <span style="color:#0066ff; font-weight:bold;">@comment</span> = mock_model<span style="color:#006600; font-weight:bold;">&#40;</span>Comment, <span style="color:#ff3333; font-weight:bold;">:user</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">nil</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; &nbsp; <span style="color:#0066ff; font-weight:bold;">@comment</span>.<span style="color:#9900CC;">should_not</span> be_valid<br />
&nbsp; <span style="color:#9966CC; font-weight:bold;">end</span></div></td></tr></tbody></table></div>
<p>и получил ответ, что сообщение :valid? неизвестно объекту @comment.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmytro Shteflyuk</title>
		<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/#comment-43174</link>
		<dc:creator>Dmytro Shteflyuk</dc:creator>
		<pubDate>Thu, 18 Mar 2010 14:26:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/#comment-43174</guid>
		<description>Спасибо, провтыкал :-)</description>
		<content:encoded><![CDATA[<p>Спасибо, провтыкал :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: liquidautumn</title>
		<link>http://kpumuk.info/ruby-on-rails/useful-helpers-for-rspec-mocks/#comment-43067</link>
		<dc:creator>liquidautumn</dc:creator>
		<pubDate>Thu, 18 Mar 2010 03:17:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/rspec/useful-helpers-for-rspec-mocks/#comment-43067</guid>
		<description>поправь пример:
[cc lang=&quot;ruby&quot;]
describe UserHelper
  it &#039;should generate correct link to user profile in user_link&#039; do
    @user = mock_model(User, :preferred_name =&gt; &#039;Dmytro S.&#039;, :full_name =&gt; &#039;Dmytro Shteflyuk&#039;)
    user_link(@user).should == link_to(&#039;Dmytro S.&#039;, user_url(:id =&gt; @user.id), :title =&gt; &#039;Dmytro Shteflyuk&#039;)
  end
end
[/cc]
</description>
		<content:encoded><![CDATA[<p>поправь пример:</p>
<div class="codecolorer-container ruby twitlight" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">describe UserHelper<br />
&nbsp; it <span style="color:#996600;">'should generate correct link to user profile in user_link'</span> <span style="color:#9966CC; font-weight:bold;">do</span><br />
&nbsp; &nbsp; <span style="color:#0066ff; font-weight:bold;">@user</span> = mock_model<span style="color:#006600; font-weight:bold;">&#40;</span>User, <span style="color:#ff3333; font-weight:bold;">:preferred_name</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">'Dmytro S.'</span>, <span style="color:#ff3333; font-weight:bold;">:full_name</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">'Dmytro Shteflyuk'</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; &nbsp; user_link<span style="color:#006600; font-weight:bold;">&#40;</span>@user<span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">should</span> == link_to<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">'Dmytro S.'</span>, user_url<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:id</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0066ff; font-weight:bold;">@user</span>.<span style="color:#9900CC;">id</span><span style="color:#006600; font-weight:bold;">&#41;</span>, <span style="color:#ff3333; font-weight:bold;">:title</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">'Dmytro Shteflyuk'</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; <span style="color:#9966CC; font-weight:bold;">end</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span></div></td></tr></tbody></table></div>
]]></content:encoded>
	</item>
</channel>
</rss>
