Oh man, Brut's HIPPOCRATIC LICENSE[1] is interesting! Just excerpting bits of Section 3.1 and Section 3.2 for example: * 3.1. The Licensee SHALL NOT, whether directly or indirectly, through agents or assigns: [...] * 3.1.12. Taliban: Be an individual or entity that: * 3.1.12.1. engages in any commercial transactions with the Taliban; or * 3.1.12.2. is a representative, agent, affiliate, successor, attorney, or assign…
All lovely ideals, but sadly means the project is not actually open source (by the official definition). And not compatible with the GPL and similar copyleft.
Brut: A New Web Framework for Ruby
61–70 of 88 posts
Re: Brut: A New Web Framework for Ruby
#62Neat, this looks like it might be a good middle ground between Sinatra (which I adore) on the barebones/low-level end and Rails (which I also adore for apps that need it, but simple apps really don't). Looking forward to trying it out!
Re: Brut: A New Web Framework for Ruby
#63Re: Brut: A New Web Framework for Ruby
#64Earlier quoted context omitted.
> My opinion is, _my unit tests_ are to protect my code against unwanted changes. This is just about the most bizarre take on unit testing I've seen in my 25-year career. > If I have to rewrite a method, usually I rewrite all of its unit tests. If you have to rewrite your tests every time you rewrite a method, you are entirely defeating the point of testing. What value you get from tests that only assert that the cur…
You seem confused about what he was saying. I’m sure you are familiar with unit testing philosophy with your experience. Calling a function and expecting a response does test the behavior of the application, just at a lower level than a request- or multi-request level spec. When he says rewriting a method he is referring to changing the logic of it; a refactor leaves the tests unchanged. That shouldn’t have needed to…
If you’re changing the tests because you’ve changed the internal, non-externally-visible logic of your code, your tests are almost certainly providing you negative value.
Being able to refactor and re-run your existing test suite to ensure consistent behavior is possibly the important property of a good test suite.
Re: Brut: A New Web Framework for Ruby
#65Re: Brut: A New Web Framework for Ruby
#66I see it is currently based on Sinatra. Just wondering if you have considered looking into Roda?
(author here) It only uses Sinatra because I happened to know it and needed to bootstrap the low-level stuff. I don't know if it needs to be based on Sinatra in the long term - it should probably just use Rack.
Re: Brut: A New Web Framework for Ruby
#67Earlier quoted context omitted.
Do you mind elaborating on what more you end up wishing you had? Most of the additional features RSpec adds seem worthwhile but just end up being more complicated/confusing in the end, in my experience. Shared contexts/examples, for example. Others like let blocks should… just be methods. I will say the change in… I think it was RSpec 3(?) to the expect(x) syntax was a hugely positive change, particularly in not havi…
The biggest thing is the mocking system. MiniTest's feels so difficult to use. I also like creating custom matchers vs. creating my own assert_* methods. I would agree that many features of RSpec are, honestly, bad: shared examples, shared contexts, etc. Excessive use of let! and let, plus the predicate matchers are all just really confusing to me. I actually thought about patching the RSpec gem to remove the feature…
Hmm it all sounds like you'd end up bastardising Rspec into being Minitest::Spec?
If you really like things like `expect().to` it's much easier to add it to Minitest::Spec (I did it back then, since there's `_().should` it's like 5-10 lines) than removing all those features and suffering the rspec weight.
Re: Brut: A New Web Framework for Ruby
#68Re: Brut: A New Web Framework for Ruby
#69Re: Brut: A New Web Framework for Ruby
#70I understand they have this peculiar license, but does that means that we can't see the source code?