-
Notifications
You must be signed in to change notification settings - Fork 236
Description
Problem
Test may pass test cases which should be fail, if test case use assertAnnotated/assertFailure
.
Reproduce
Change any test case using assertAnnotated/assertFailure
to a wrong case deliberately and execute npm run test
.
For example, change the first failure case in test/bananaInBoxRule.ts
template: \` <input type="text" ([ngModel])="foo" name="foo">
to
template: \` <input type="text" [(ngModel)]="foo" name="foo">
This template doesn't violate rule and assert should fail and Chai report test fail. However, Chai report all test passes.
Reason
Chai is work by exception. assertFailure catch the exception, cause Chai didn't detect the failed assertion.
Here is the code snippet: https://github.com/mgechev/codelyzer/blob/master/test/testHelper.ts#L236-L251
Seem like PR #659 broke it.
I'm new to Codelyzer and not sure if it is a bug. If it's not a bug, please close this issue. If it's a bug, I'm pleasure to make a PR to fix it 😁
Activity
mgechev commentedon Aug 24, 2018
Thanks for pointing this out! We'd love to get a PR! :-)
fix: assertFailure catch exception throw by assert (mgechev#703)
fix: assertFailure catch exception throw by assert (mgechev#703)
fix: assertFailure catch exception throw by assert (#703) (#704)