Sequel has been using RSpec since before I was maintainer. Over the years, I've added support for newer versions of RSpec, but Sequel has always run correctly with RSpec 1.3, and I haven't found newer RSpec features added much value for me.
After learning more about minitest/spec, I found it fit my testing philosophy better, and after reading most of the code, I've found it simple and easy to extend. After switching all of the other libraries and applications I maintain to minitest/spec, I've spent the last few days switching Sequel over to it as well. This was not just a simple syntax replacement. minitest randomizes test output by default, which exposed a large number of test order dependency bugs in Sequel's specs, which I had to fix. In most cases, I could determine the fix fairly easily based on the error, but in some cases I used minitest_bisect to bisect the error and give me a minimal reproduction, which made it easy to fix.To be fair, the next version of RSpec will have support for bisecting built in, and I RSpec has supported randomized tests since 2.8.0, though it is still not the default. After switching to minitest/spec, in addition to being higher quality due to the randomized order, the specs also run a bit faster, which is a nice bonus. I did have to create a couple minitest extensions to add features to minitest that it doesn't support natively (mintiest-hooks for before/after :all hooks, minitest-shared_description for shared spec subclasses), but I had a very easy time developing them. You now only have to install 3 gems to test Sequel, as opposed to the 6 pulled in by rspec, and the gems are smaller (84KB vs 338KB). As this is just a changing of the spec library, this will not have an effect on Sequel users. However, it should make it easier to contribute to Sequel, since you will no longer need to make sure specs pass on multiple versions of RSpec. Thanks, Jeremy -- You received this message because you are subscribed to the Google Groups "sequel-talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sequel-talk. For more options, visit https://groups.google.com/d/optout.
