<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dot.Using &#187; specifications</title>
	<atom:link href="http://blog.kesor.net/category/specifications/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.kesor.net</link>
	<description>Making technology about computers, and computers about usability.</description>
	<lastBuildDate>Mon, 29 Jun 2009 22:46:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Writing helpers with Haml and rSpec</title>
		<link>http://blog.kesor.net/2007/07/22/writing-helpers-with-haml-and-rspec/</link>
		<comments>http://blog.kesor.net/2007/07/22/writing-helpers-with-haml-and-rspec/#comments</comments>
		<pubDate>Sun, 22 Jul 2007 19:02:46 +0000</pubDate>
		<dc:creator>kesor</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[haml]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rspec]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[specifications]]></category>

		<guid isPermaLink="false">http://blog.kesor.net/2007/07/22/writing-helpers-with-haml-and-rspec/</guid>
		<description><![CDATA[Recently Wolfman posted a description about Rails helpers written with Haml::Helpers#open and rSpec.
I want it to be more DRY than it is, since the whole application is using rSpec and Haml, all helpers should have the same before(:each)
So basically &#8211; what I did was :

[source:ruby]
Spec::Runner.configure do &#124;config&#124;
  config.with_options :behaviour_type => :helpers do &#124;config&#124;
  [...]]]></description>
			<content:encoded><![CDATA[<p>Recently <a href="http://blog.wolfman.com/articles/2007/07/14/using-rspec-to-test-haml-helpers">Wolfman</a> posted a description about <a target="_blank" title="Ruby on Rails" href="http://www.rubyonrails.com">Rails</a> helpers written with <a target="_blank" title="HAML" href="http://haml.hamptoncatlin.com">Haml</a>::<a target="_blank" title="HAML::Helpers RDoc" href="http://haml.hamptoncatlin.com/docs/rdoc/classes/Haml/Helpers.html">Helpers#open</a> and <a target="_blank" title="rSpec" href="http://rspec.rubyforge.org">rSpec</a>.</p>
<p>I want it to be more DRY than it is, since the whole application is using rSpec and Haml, all helpers should have the same <code>before(:each)</code></p>
<p>So basically &#8211; what I did was :</p>
<p><span id="more-8"></span><br />
[source:ruby]<br />
Spec::Runner.configure do |config|<br />
  config.with_options :behaviour_type => :helpers do |config|<br />
    config.include Haml::Helpers<br />
    config.include ActionView::Helpers<br />
    config.prepend_before :all do<br />
      @haml_is_haml = true<br />
      @haml_stack = [Haml::Buffer.new]<br />
    end<br />
  end<br />
end<br />
[/source]</p>
<p>Except it will not work, for various reasons.</p>
<p>Hope to solve all the quirks sometime soon. I know this will cost me some sleep.</p>
<p></p>

<div class="sociable">

<ul>
	<li class="sociablefirst"><a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F&amp;title=Writing%20helpers%20with%20Haml%20and%20rSpec&amp;bodytext=Recently%20Wolfman%20posted%20a%20description%20about%20Rails%20helpers%20written%20with%20Haml%3A%3AHelpers%23open%20and%20rSpec.%0D%0A%0D%0AI%20want%20it%20to%20be%20more%20DRY%20than%20it%20is%2C%20since%20the%20whole%20application%20is%20using%20rSpec%20and%20Haml%2C%20all%20helpers%20should%20have%20the%20same%20before%28%3Aeach%29%0D%0A%0D%0ASo%20bas" title="Digg"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F&amp;title=Writing%20helpers%20with%20Haml%20and%20rSpec&amp;notes=Recently%20Wolfman%20posted%20a%20description%20about%20Rails%20helpers%20written%20with%20Haml%3A%3AHelpers%23open%20and%20rSpec.%0D%0A%0D%0AI%20want%20it%20to%20be%20more%20DRY%20than%20it%20is%2C%20since%20the%20whole%20application%20is%20using%20rSpec%20and%20Haml%2C%20all%20helpers%20should%20have%20the%20same%20before%28%3Aeach%29%0D%0A%0D%0ASo%20bas" title="del.icio.us"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://reddit.com/submit?url=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F&amp;title=Writing%20helpers%20with%20Haml%20and%20rSpec" title="Reddit"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F" title="Technorati"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="mailto:?subject=Writing%20helpers%20with%20Haml%20and%20rSpec&amp;body=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F" title="email"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F&amp;t=Writing%20helpers%20with%20Haml%20and%20rSpec" title="Facebook"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.kesor.net%2F2007%2F07%2F22%2Fwriting-helpers-with-haml-and-rspec%2F&amp;title=Writing%20helpers%20with%20Haml%20and%20rSpec&amp;annotation=Recently%20Wolfman%20posted%20a%20description%20about%20Rails%20helpers%20written%20with%20Haml%3A%3AHelpers%23open%20and%20rSpec.%0D%0A%0D%0AI%20want%20it%20to%20be%20more%20DRY%20than%20it%20is%2C%20since%20the%20whole%20application%20is%20using%20rSpec%20and%20Haml%2C%20all%20helpers%20should%20have%20the%20same%20before%28%3Aeach%29%0D%0A%0D%0ASo%20bas" title="Google Bookmarks"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="" title="Pownce"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/" title="Pownce" alt="Pownce" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  href="" title="TwitThis"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/" title="TwitThis" alt="TwitThis" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.kesor.net/2007/07/22/writing-helpers-with-haml-and-rspec/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ruby + proper specifications = rSpec</title>
		<link>http://blog.kesor.net/2006/05/21/ruby-proper-specifications-rspec/</link>
		<comments>http://blog.kesor.net/2006/05/21/ruby-proper-specifications-rspec/#comments</comments>
		<pubDate>Sun, 21 May 2006 20:07:53 +0000</pubDate>
		<dc:creator>kesor</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[specifications]]></category>

		<guid isPermaLink="false">http://blog.kesor.net/2006/05/21/ruby-proper-specifications-rspec/</guid>
		<description><![CDATA[I had an enlightenment today &#8211; truly an enlightenment.
After months of reading and getting to know what test driven development and extreme programming is all about, I have finally been able to practice what I preach. Since I work with several programmers and the product we are writing is so new that it is still [...]]]></description>
			<content:encoded><![CDATA[<p>I had an enlightenment today &#8211; truly an enlightenment.</p>
<p>After months of reading and getting to know what test driven development and extreme programming is all about, I have finally been able to practice what I preach. Since I work with several programmers and the product we are writing is so new that it is still in diapers (famous hebrew saying). Quality control is a demand from above management, after they got burned with too many escalations with the existing product. So part of my job description was preaching unit testing and such.</p>
<p>Anyways &#8211; I really did understand and could quote all the reasons why testing is important, and why its a sort of a documentation, and why it should be done before coding, and why it makes coding more structured and disciplined and gives the programmer a direction. But I could not make myself understand how to implement it with ruby&#8217;s <a title="Test::Unit" target="_blank" href="http://testunit.talbott.ws/">Test::Unit</a> for example, not even talking about more obscure implementations of <a title="xUnit" target="_blank" href="http://en.wikipedia.org/wiki/XUnit">xUnit </a>like <a title="cppUnit" target="_blank" href="http://cppunit.sourceforge.net/cppunit-wiki">CppUnit</a> which is something that was chosen for our project.</p>
<p>Last week I saw the presentation <a target="_blank" title="Dave Astels" href="http://www.daveastels.com/">Dave Astels</a> made at google, freely downloadable from google video. An I saw that it was god (with one &#8216;o&#8217;). And today I finally got to trash all the beginnings that I tried to do with Test::Unit on the ClearCase wrapper I&#8217;m writing &#8211; and started doing <a target="_blank" href="http://rspec.rubyforge.org/">rSpec</a> instead.</p>
<p>It flowed&#8230; like a river. And any bumps that were on the were not frustrating, they were annoying, thus actually motivating me to kick them of my route and continue flowing with the flow without any frustration. It rocks. I love it.</p>
<p>Still the one thing I miss with all this TDD and BDD are good concrete examples that are a bit more than what <a target="_blank" title="rSpec examples" href="http://rspec.rubyforge.org/examples.html">rSpec examples</a> are, I need it chewed and digested for extreme easy understanding. Maybe a step-by-step evolving kind of code, maybe even a book matching the Progmatic books quality is the thing missing in all of this. Because it always looks really great &#8211; but when a motivated but inexperienced programmer like me tries to implement this stuff it soon becomes frustrating. Even though rSpec is not too frustrating, and hopefully it will only grow to be easier and more intuitive and productive like it is already in its alpha(?) state.</p>
<p>Enough ramblings for now &#8211; back to the code! <img src='http://blog.kesor.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p></p>

<div class="sociable">

<ul>
	<li class="sociablefirst"><a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F&amp;title=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec&amp;bodytext=I%20had%20an%20enlightenment%20today%20-%20truly%20an%20enlightenment.%0D%0A%0D%0AAfter%20months%20of%20reading%20and%20getting%20to%20know%20what%20test%20driven%20development%20and%20extreme%20programming%20is%20all%20about%2C%20I%20have%20finally%20been%20able%20to%20practice%20what%20I%20preach.%20Since%20I%20work%20with%20several%20pro" title="Digg"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F&amp;title=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec&amp;notes=I%20had%20an%20enlightenment%20today%20-%20truly%20an%20enlightenment.%0D%0A%0D%0AAfter%20months%20of%20reading%20and%20getting%20to%20know%20what%20test%20driven%20development%20and%20extreme%20programming%20is%20all%20about%2C%20I%20have%20finally%20been%20able%20to%20practice%20what%20I%20preach.%20Since%20I%20work%20with%20several%20pro" title="del.icio.us"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://reddit.com/submit?url=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F&amp;title=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec" title="Reddit"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F" title="Technorati"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="mailto:?subject=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec&amp;body=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F" title="email"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/email_link.png" title="email" alt="email" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F&amp;t=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec" title="Facebook"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fblog.kesor.net%2F2006%2F05%2F21%2Fruby-proper-specifications-rspec%2F&amp;title=Ruby%20%2B%20proper%20specifications%20%3D%20rSpec&amp;annotation=I%20had%20an%20enlightenment%20today%20-%20truly%20an%20enlightenment.%0D%0A%0D%0AAfter%20months%20of%20reading%20and%20getting%20to%20know%20what%20test%20driven%20development%20and%20extreme%20programming%20is%20all%20about%2C%20I%20have%20finally%20been%20able%20to%20practice%20what%20I%20preach.%20Since%20I%20work%20with%20several%20pro" title="Google Bookmarks"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="" title="Pownce"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/" title="Pownce" alt="Pownce" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  href="" title="TwitThis"><img src="http://blog.kesor.net/wp-content/plugins/sociable/images/" title="TwitThis" alt="TwitThis" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.kesor.net/2006/05/21/ruby-proper-specifications-rspec/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.365 seconds -->
