Hello everybody,<div><br class="webkit-block-placeholder"></div><div>I&#39;ve been using RSpec as a tool to create web applications for some time now, in Rails, and using plain Ruby with WEBrick as well.&nbsp;The tool suits my needs and the story runner is great.
</div><div>Now there are things that aren&#39;t&nbsp;solvable&nbsp;on the web, you&#39;ll need a _real_ desktop application for those problems.&nbsp;</div><div><br class="webkit-block-placeholder"></div><div>So I&#39;ve toyed a bit around with various GUI libraries as wxRuby and RubyCocoa, to get a feeling on how these libraries work and I love to create native OS X applications using cocoa.&nbsp;
</div><div>Of course,&nbsp;the next question that arose in my head was:&quot;How do I drive the design of an application using a BDD framework like RSpec?&quot;.</div><div><br class="webkit-block-placeholder"></div><div>When writing a web application, it is relatively easy to simulate a HTTP request to the app and crawl through the returned HTML, but for a desktop application it&#39;s different, right?
</div><div>The format (html) handled between the application, and the toolkit drawing the actual screen isn&#39;t that open for a desktop application as it is for a web application.</div><div><br class="webkit-block-placeholder">
</div><div>So, since we don&#39;t want to test the inner workings of the gui toolkit and we only want to specify the behaviour of the code we write self, we must plug a framework somewhere, to capture the actual calls to this toolkit to know if our code is doing the right thing. At least, that&#39;s how I see it currently.
</div><div>But how could that be done?&nbsp;</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Regards,</div><div><br class="webkit-block-placeholder"></div><div>Matthijs Langenberg&nbsp;
</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div>