<?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: Introducing NaturalSpec &#8211; A Domain-specific language (DSL) for testing &#8211; Part I</title>
	<atom:link href="http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/</link>
	<description>This Blog is about Microsoft Dynamics NAV (f.k.a Navision incl. C/SIDE and C/AL), C#, F# and .NET in general.</description>
	<lastBuildDate>Tue, 31 Jan 2012 17:13:06 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: ninegrid</title>
		<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/comment-page-1/#comment-111883</link>
		<dc:creator>ninegrid</dc:creator>
		<pubDate>Mon, 25 Oct 2010 21:28:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/#comment-111883</guid>
		<description>Curious, if you prefer the Ruby way with the name of your tests wrapped in quotes as opposed to snake case, why not use the F# syntax:

let ``When calculating fac 5 it should equal 120`` =
  Given 5
    &#124;&gt; When calculating factorial
    &#124;&gt; It should equal 120
    &#124;&gt; Verify    

Will NaturalSpec not support this valid F# syntax?</description>
		<content:encoded><![CDATA[<p>Curious, if you prefer the Ruby way with the name of your tests wrapped in quotes as opposed to snake case, why not use the F# syntax:</p>
<p>let &#8220;When calculating fac 5 it should equal 120&#8220; =<br />
  Given 5<br />
    |&gt; When calculating factorial<br />
    |&gt; It should equal 120<br />
    |&gt; Verify    </p>
<p>Will NaturalSpec not support this valid F# syntax?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steffen Forkmann</title>
		<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/comment-page-1/#comment-101282</link>
		<dc:creator>Steffen Forkmann</dc:creator>
		<pubDate>Mon, 24 Aug 2009 07:07:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/#comment-101282</guid>
		<description>Oups. 

Thanks Peter.</description>
		<content:encoded><![CDATA[<p>Oups. </p>
<p>Thanks Peter.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Lundsby</title>
		<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/comment-page-1/#comment-101228</link>
		<dc:creator>Peter Lundsby</dc:creator>
		<pubDate>Sun, 23 Aug 2009 10:06:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/#comment-101228</guid>
		<description>I am new to F# so bear with my ignorance if my request is stupid!
When considering your last example, it seems that it would be useful to have the scenario name, inferred from the contents of the scenerio, instead of given as an identifier. This would eliminate some typing and probably also some errors.

[]
  let When_calculating_fac_0_it_should_equal_0() =
    Given 0
      &#124;&gt; When calculating factorial
      &#124;&gt; It should equal 1
      &#124;&gt; Verify

In the example the identifier incorrectly states that factorial of 0 is 0, however in the spec is correct states that factorial of 0 is 1.</description>
		<content:encoded><![CDATA[<p>I am new to F# so bear with my ignorance if my request is stupid!<br />
When considering your last example, it seems that it would be useful to have the scenario name, inferred from the contents of the scenerio, instead of given as an identifier. This would eliminate some typing and probably also some errors.</p>
<p>[]<br />
  let When_calculating_fac_0_it_should_equal_0() =<br />
    Given 0<br />
      |&gt; When calculating factorial<br />
      |&gt; It should equal 1<br />
      |&gt; Verify</p>
<p>In the example the identifier incorrectly states that factorial of 0 is 0, however in the spec is correct states that factorial of 0 is 1.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Martin Moore</title>
		<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/comment-page-1/#comment-89420</link>
		<dc:creator>James Martin Moore</dc:creator>
		<pubDate>Mon, 02 Mar 2009 03:07:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/#comment-89420</guid>
		<description>The first thing that jumps out at me (coming from the Ruby world) is the nasty punctuation.  Most people in the Ruby world have moved to this kind of thing:

test &quot;When removing blah blah blah&quot; do
  your test goes here
end

Much easier to read (and type) than the old-fashioned

def test_when_removing_blah_blah_blah
  ...
end

The method &quot;test&quot; takes two parameters, a string containing the name of the test and a block, and adds the block to the list of tests to be executed.

I&#039;m very new to F#, but it seems like you could get to nicer test names using the same idea.

Something vaguely like: 

let test (test_name:string, test_function: (unit -&gt; bool)) =
  appendThisNameBlockPairToListOfTests test_name, test_function

Lets you do:

test &quot;fails, no matter what&quot;, (fun -&gt; false)</description>
		<content:encoded><![CDATA[<p>The first thing that jumps out at me (coming from the Ruby world) is the nasty punctuation.  Most people in the Ruby world have moved to this kind of thing:</p>
<p>test &#8220;When removing blah blah blah&#8221; do<br />
  your test goes here<br />
end</p>
<p>Much easier to read (and type) than the old-fashioned</p>
<p>def test_when_removing_blah_blah_blah<br />
  &#8230;<br />
end</p>
<p>The method &#8220;test&#8221; takes two parameters, a string containing the name of the test and a block, and adds the block to the list of tests to be executed.</p>
<p>I&#8217;m very new to F#, but it seems like you could get to nicer test names using the same idea.</p>
<p>Something vaguely like: </p>
<p>let test (test_name:string, test_function: (unit -&gt; bool)) =<br />
  appendThisNameBlockPairToListOfTests test_name, test_function</p>
<p>Lets you do:</p>
<p>test &#8220;fails, no matter what&#8221;, (fun -&gt; false)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcel Hoyer</title>
		<link>http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/comment-page-1/#comment-89182</link>
		<dc:creator>Marcel Hoyer</dc:creator>
		<pubDate>Tue, 24 Feb 2009 00:41:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.navision-blog.de/2009/02/23/introducing-naturalspec-a-dsl-for-testing-part-i/#comment-89182</guid>
		<description>It seems as if we hooked you up with BDD at our .NET Boot Camp. Nice job so far. But one issue: do you really need the &lt;i&gt;Verify&lt;/i&gt; function? It looks like &quot;noise&quot;, cause it is used in every scenario. The same with [] and []. I&#039;m not the F# guy - so don&#039;t hit me. I&#039;m not sure if it is possible, but in my eyes this will look much more elegant:

&lt;code&gt;
module FactorialSpec =
  let When_calculating_fac_5_it_should_equal_120() =
    Given 5
      &#124;&gt; When calculating factorial
      &#124;&gt; It should equal 120
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>It seems as if we hooked you up with BDD at our .NET Boot Camp. Nice job so far. But one issue: do you really need the <i>Verify</i> function? It looks like &#8220;noise&#8221;, cause it is used in every scenario. The same with [] and []. I&#8217;m not the F# guy &#8211; so don&#8217;t hit me. I&#8217;m not sure if it is possible, but in my eyes this will look much more elegant:</p>
<p><code><br />
module FactorialSpec =<br />
  let When_calculating_fac_5_it_should_equal_120() =<br />
    Given 5<br />
      |&gt; When calculating factorial<br />
      |&gt; It should equal 120<br />
</code></p>
]]></content:encoded>
	</item>
</channel>
</rss>

