I've recently moved from using Parallels for browser testing to Sun's Open Source VirtualBox. Here's a walkthrough on how to get a browser testing suite for free on OSX or Ubuntu.
Pure-Ruby alternative to Cucumber.
What Is Bloat?
Recently I've been made aware of people inside US Government organizations using my Ruby on Rails Security presentation as an excuse to limit Ruby on Rails adoption and projects inside those organizations.
You want to try out all of the different ruby interpreters and versions including different patchlevels, but you don't want to break what's working for you now. No time to waste?
It's important, however, that his wonderful code live on, and we need your help to do so. We've mirrored what repos we could find and contacted github tech support, who have promised assistance. Whymirror will do what it can to ease the transition but CANNOT be a long-term solution
Write declarative tests using nested contexts without performance penalties. Contest is less than 100 lines of code and gets the job done.
I brought up the question whether tests should call the translation API when checking for the presence of a string.
Another ActiveModel alternative.
Understand API usage.
Rio is a facade for most of the standard ruby classes that deal with I/O; providing a simple, intuitive, succinct interface to the functionality provided by IO, File, Dir, Pathname, FileUtils, Tempfile, StringIO, OpenURI and others. Rio also provides an application level interface which allows many common I/O idioms to be expressed succinctly.
What if my controller decides to take the Thing.create! and rescue route? What if my model has a special initializer method, like Thing.build_with_foo? My spec for behavior should not fail if I change the implementation.
Amidst my 400 unread Boing Boing links are probably ten or fifteen that are probably real gems. But I’ll never know and Boing Boing sure as hell isn’t going to help me out.
The same problem happened with address, which was specified to mean only the contact information for the author of a page. It was quite explicitly specified to not accept mailing addresses. Of course, tons of people did just that, because they had an address and there was an address element, so of course they went together!