<?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: Simple unit testing with Chicken Scheme</title>
	<atom:link href="http://4.flowsnake.org/archives/45/feed" rel="self" type="application/rss+xml" />
	<link>http://4.flowsnake.org/archives/45</link>
	<description>A Pythoneer's adventures with Chicken Scheme. ^_^ And more.</description>
	<pubDate>Wed, 07 Jan 2009 04:13:58 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
		<item>
		<title>By: Hans Nowak</title>
		<link>http://4.flowsnake.org/archives/45#comment-44</link>
		<dc:creator>Hans Nowak</dc:creator>
		<pubDate>Tue, 29 Jan 2008 15:31:00 +0000</pubDate>
		<guid isPermaLink="false">http://4.flowsnake.org/archives/45#comment-44</guid>
		<description>@Ian: Maybe I will. :) It should be an interesting project to do, and maybe to contribute (as an egg or otherwise). I'm not sure I know enough about all the details yet, though, like the docstrings.</description>
		<content:encoded><![CDATA[<p>@Ian: Maybe I will. :) It should be an interesting project to do, and maybe to contribute (as an egg or otherwise). I'm not sure I know enough about all the details yet, though, like the docstrings.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian Bicking</title>
		<link>http://4.flowsnake.org/archives/45#comment-43</link>
		<dc:creator>Ian Bicking</dc:creator>
		<pubDate>Tue, 29 Jan 2008 04:25:19 +0000</pubDate>
		<guid isPermaLink="false">http://4.flowsnake.org/archives/45#comment-43</guid>
		<description>I harp on this frequently, but: write doctest for Scheme!  It even has docstrings (though stand-alone files are also nice), repr, and a super-easy-to-use eval.  And its tokenizer is also easy to use.  It should be much easier to write than in Python.</description>
		<content:encoded><![CDATA[<p>I harp on this frequently, but: write doctest for Scheme!  It even has docstrings (though stand-alone files are also nice), repr, and a super-easy-to-use eval.  And its tokenizer is also easy to use.  It should be much easier to write than in Python.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kon Lovett</title>
		<link>http://4.flowsnake.org/archives/45#comment-22</link>
		<dc:creator>Kon Lovett</dc:creator>
		<pubDate>Tue, 22 Jan 2008 21:28:39 +0000</pubDate>
		<guid isPermaLink="false">http://4.flowsnake.org/archives/45#comment-22</guid>
		<description>The "testbase" suite is a possibility. However I would never claim it to be "easy". Alex's "test" and Neil's "testeez" are much more approachable. Another pkg you might run into is "SchemeUnit". While not available for Chicken ("testbase" has similar facilities) you will come across it with PLT Scheme.

I wrote "testbase" &#38; use it for my eggs so there are a number of real-world examples. I don't have a configurable report generator, however there are a number of pre-defined available. Also "testbase", used with the testbase driver, will build a database of results.

Flavor example:
(use testbase testbase-output-compact)
(define-test opcode-test "Opcodes"
  (initial
    (define (test-opcode opcode)
      (define test-name (sprintf "test opcode: ~s" opcode))
      (expect-success test-name (member (opcode-type opcode) *opcode-types*))) )

  (test/collect "All opcodes"
    (for-each (lambda (opcode) (collect-test (test-opcode opcode))) *opcodes*) ) )
(test::output-style-compact (opcode-test))

SUITE Passed: Opcodes

  CASE Passed: All opcodes

    EXPECTATION: test opcode: # 
    Expect success
    Passed: test opcode: #

    EXPECTATION: test opcode: # 
    Expect success
    Passed: test opcode: #

    EXPECTATION: test opcode: # 
    Expect success
    Passed: test opcode: #

ALL TESTS SUCCESSFUL!
#t</description>
		<content:encoded><![CDATA[<p>The "testbase" suite is a possibility. However I would never claim it to be "easy". Alex's "test" and Neil's "testeez" are much more approachable. Another pkg you might run into is "SchemeUnit". While not available for Chicken ("testbase" has similar facilities) you will come across it with PLT Scheme.</p>
<p>I wrote "testbase" &amp; use it for my eggs so there are a number of real-world examples. I don't have a configurable report generator, however there are a number of pre-defined available. Also "testbase", used with the testbase driver, will build a database of results.</p>
<p>Flavor example:<br />
(use testbase testbase-output-compact)<br />
(define-test opcode-test "Opcodes"<br />
  (initial<br />
    (define (test-opcode opcode)<br />
      (define test-name (sprintf "test opcode: ~s" opcode))<br />
      (expect-success test-name (member (opcode-type opcode) *opcode-types*))) )</p>
<p>  (test/collect "All opcodes"<br />
    (for-each (lambda (opcode) (collect-test (test-opcode opcode))) *opcodes*) ) )<br />
(test::output-style-compact (opcode-test))</p>
<p>SUITE Passed: Opcodes</p>
<p>  CASE Passed: All opcodes</p>
<p>    EXPECTATION: test opcode: #<br />
    Expect success<br />
    Passed: test opcode: #</p>
<p>    EXPECTATION: test opcode: #<br />
    Expect success<br />
    Passed: test opcode: #</p>
<p>    EXPECTATION: test opcode: #<br />
    Expect success<br />
    Passed: test opcode: #</p>
<p>ALL TESTS SUCCESSFUL!<br />
#t</p>
]]></content:encoded>
	</item>
</channel>
</rss>
