As part of moving to use the dart test package instead of the deprecated unittest, we need to find a way of dealing with iit and ddescribe. In the test package exclusive specs are not natively supported and test files are read one at a time. This means that we can patch iit using Guinness, but it will only work within one file.
There are two ways around this. We can have one master-test-file which calls out to all other tests (ugly). Or, we can modify the workflow slightly. This is what I propose below:
Guinness2 will patch iit to create a test with a tag - test(name, fn, {tags: 'solo'}). This tag by itself will do nothing. Then, introduce a new gulp task - gulp test.unit.dart.solo which will expand to pub run test --tags="solo". The only change in user workflow is needing to run this task when using iit or ddescribe.
As part of moving to use the dart
testpackage instead of the deprecatedunittest, we need to find a way of dealing withiitandddescribe. In the test package exclusive specs are not natively supported and test files are read one at a time. This means that we can patchiitusing Guinness, but it will only work within one file.There are two ways around this. We can have one master-test-file which calls out to all other tests (ugly). Or, we can modify the workflow slightly. This is what I propose below:
Guinness2 will patch
iitto create a test with a tag -test(name, fn, {tags: 'solo'}). This tag by itself will do nothing. Then, introduce a new gulp task -gulp test.unit.dart.solowhich will expand topub run test --tags="solo". The only change in user workflow is needing to run this task when usingiitorddescribe.