On Saturday, 5 May 2018 at 13:28:41 UTC, Atila Neves wrote:
For those not in the know, unit-threaded is an advanced testing library for D that runs tests in threads by default. It has a lot of features:

http://code.dlang.org/packages/unit-threaded

New:

* Bug fixes
* Better integration testing
* unitThreadedLight mode also runs tests in threads
* More DDoc documentation (peer pressure from Adam's site)
* Sorta kinda fluent-like asserts

On the new asserts (should and should.be are interchangeable):

    1.should == 1
    1.should.not == 2

    1.should.be in [1, 2, 3]
    4.should.not.be in [1, 2, 3]

More controversially (due to a lack of available operators to overload):

    // same as .shouldApproxEqual
    1.0.should ~ 1.0001;
    1.0.should.not ~ 2.0;

    // same as .shouldBeSameSetAs
    [1, 2, 3].should ~ [3, 2, 1];
    [1, 2, 3].should.not ~ [1, 2, 2];


I also considered adding `.should ~=`. I think it even reads better, but apparently some people don't. Let me know?

The operator overloads are completely optional.


Atila

Personally, I don't like that kind of "abuse" of operators at all. I think it looks really unusual and it kind of breaks your "flow" when reading the code. Additionally, people, who don't know about the special behaviour the operators have in this case, might get really confused. I would much prefer it, if you used a more common fluent style (like 1.0.should.be.approximately(1.0001);).

Anyways, thanks for working on this awesome project!
  • unit-threaded v0.7.4... Atila Neves via Digitalmars-d-announce
    • Re: unit-thread... Johannes Loher via Digitalmars-d-announce
      • Re: unit-th... Dechcaudron via Digitalmars-d-announce
        • Re: uni... Johannes Loher via Digitalmars-d-announce
          • Re:... Nick Sabalausky (Abscissa) via Digitalmars-d-announce
            • ... Cym13 via Digitalmars-d-announce
              • ... Nick Sabalausky (Abscissa) via Digitalmars-d-announce
                • ... Cym13 via Digitalmars-d-announce
                • ... bauss via Digitalmars-d-announce
            • ... Jacob Carlborg via Digitalmars-d-announce
          • Re:... Dechcaudron via Digitalmars-d-announce
      • Re: unit-th... bauss via Digitalmars-d-announce

Reply via email to