Re: Rudimentary testing in mbld: Done.
[Thread Prev] | [Thread Next]
- Subject: Re: Rudimentary testing in mbld: Done.
- From: Ryan Gonzalez <rymg19@xxxxxxxxx>
- Date: Sat, 21 Feb 2015 14:38:40 -0600
- To: Ori Bernstein <ori@xxxxxxxxxxxxxx>
- Cc: myrddin-dev@xxxxxxxxxxxxxx
So far, I know of three variants of unit testing: - Those that go macro happy but are really hands-off. - Those that go macro happy for no reason because they're just as painful as the other ones. - Those that have no macros but are still nice. - Those that have no macros but make you shove every stupid detail in a required argument. - Those that are language-intergrated and make reading source kind of weird... I might toy with porting my libcut <https://github.com/kirbyfan64/libcut> to Myrddin; since traits work, it shouldn't be too painful. On Sat, Feb 21, 2015 at 1:03 AM, Ori Bernstein <ori@xxxxxxxxxxxxxx> wrote: > The Myrddin build system, mbld, now supports rudimentary testing. Just run > 'mbld test' to build and run all of the tests. Two kinds of testing are > supported: Implicit tests, and explicit tests. > > Implicit tests are tests that are built and run without any declaration. > These tests correspond 1:1 with source files, and live in test/srcfile.myr. > > Explicit tests are named explicitly, with a similar syntax to binary > targets, > however, with 'bin' replaced with 'test'. As with implicit tests, they are > only > built and run when running 'mbld test' > > So, eg, if you have the following project structure: > > foo/ > main.myr > frob.myr > blort.myr > testfoo.myr > test/ > frob.myr > blort.myr > > with the following contents in your bldfile: > > bin foo = main.myr frob.myr blort.myr ;; > test testfoo = testfoo.myr frob.myr blort.myr ;; > > Then 'mbld test' will build and run the following > targets: > > test/frob > test/blort > testfoo > > If they exit with status 0 ("" on plan 9), they will be considered to have > run > successfully. Any other status will be considered to be a failure. > > As far as getting a sane unit testing framework to fit with this -- ideas, > references, and suggestions welcome. > > > -- Ryan If anybody ever asks me why I prefer C++ to C, my answer will be simple: "It's becauseslejfp23(@#Q*(E*EIdc-SEGFAULT. Wait, I don't think that was nul-terminated." Personal reality distortion fields are immune to contradictory evidence. - srean Check out my website: http://kirbyfan64.github.io/
Rudimentary testing in mbld: Done. | Ori Bernstein <ori@xxxxxxxxxxxxxx> |
- Prev by Date: Re: Traits seem to be working.
- Next by Date: Re: Traits seem to be working.
- Previous by thread: Rudimentary testing in mbld: Done.
- Next by thread: Traits seem to be working.
- Index(es):