Let's bikeshed std.experimental.testing assertions/checks/whatchamacallits

Dicebot via Digitalmars-d digitalmars-d at puremagic.com
Thu Jul 2 16:28:52 PDT 2015


On Thursday, 2 July 2015 at 19:06:22 UTC, Jacob Carlborg wrote:
> On 02/07/15 14:28, Dicebot wrote:
>
>> Neither. But with the second one I at least have a chance to 
>> figure out
>> what it actually tests. To understand the first one I'd need 
>> to read the
>> code of that custom matcher.
>
> Once you know what a matcher does or how it's used it's a lot 
> more readable and easier to create new tests.

I am not going to investigate all custom matchers and stuff to 
submit one simple pull request to a project I don't care much 
about. Simple helper function may be slightly less "pretty" but 
much easier to grep for and reason about.

> By that definition we should all write object oriented code in 
> C. Heck, why don't we just use assembly and be done with it.

That is exactly why language features are better than free form 
AST macros. Any abstraction has inherent learning costs. Any 
non-standard abstraction - even more so. For in-house project it 
tends to be still worth it because maintenance costs tend to be 
higher than learning costs and development team is relatively 
stable. For open-source ecosystem - quite the contrary. And here 
we speak about something that lays foundation to any open-source 
contributions - standard testing system.


More information about the Digitalmars-d mailing list