RSpec is the default testing framework
Accepted
CreatedContext
Brut doesn't go for flexibility, and it needs to allow its components to be tested, thus some sort of testing solution seems warranted. In addition to simply configuring a testing library, Brut will want to provide helper methods, matchers, and other stuff to make writing tests as straightforward as it can be.
This is easier if there is just one testing library that is being focused on. Of note, the community seems divided between RSpec and MiniTest, however RSpec seems to be more widely in use.
Concerns or Issues
Developers should not have to think about the testing framework choice, or figure out how to configure their framework. The developer tools should not have to bear the complexity of multiple testing tools, e.g. for scaffolding.
Decision
RSpec will be the testing framework supported by Brut.
Options Considered, but Not Chosen
Minitest was seriously considered. It's standard in Ruby, and mostly full-featured. It does not use a lot of abstractions or weird DSL syntax. It does not have a lot of features that developers should avoid.
That said, the mocking system is much more difficult to use than RSpec's. It doesn't produce as good of an error message as RSpec and has no matcher concept - you have to create assert methods on your own. Further, I never can figure out which order the arguments go in e.g. assert_equals.
Minitest also seems not as widely used, but this could be selection bias on my part.
System Qualities or Desired Consequences
The main benefit of choosing one thing is that Brut's internals are simplified, and developers don't have to make a choice. The benefit to having that choice be RSpec is that it's widely used, widely understood, and a fine choice for everyone, if not the preferred choice for many.
Downsides
Some people will want to use Minitest and not want to deal with RSpec. Some teams will like RSpec but not want to constantly police all the features that make things like worse like shared examples. Someday Brut could provide a way to disable some of RSpec's less good features.
Additional Rationale
On many occasions, I have started out with MiniTest, based on the notion that it's good enough and it's standard. In every time, I have switched to RSpec because of the mocking, error reporting, and matchers concept. So while my brain may want MiniTest, my heart clearly wants RSpec.