atrium icon indicating copy to clipboard operation
atrium copied to clipboard

catch and report unexpected exceptions

Open robstoll opened this issue 1 year ago • 0 comments

Platform (all, jvm, js): all Extension (none, kotlin 1.3): none

Code related feature

Currently, we only catch unexpected exceptions in:

  • feature extractors
  • Function0.toThrow/notToThrow

But we especially don't do it in:

  • ExpectGrouping-block
  • groups
  • expectation-groups
  • subject changer
  • _logicAppend

Which means we:

  • fail fast
  • might miss to evaluate further expectations
  • won't be able to report anything about already evaluated expectations or give more context

For instance:

expectGrouped {
   group("foo") {

      // one expectation fails
   }

  group("bar") {
    // throws unexpected exception
  }

  group("baz"){
    // no longer evaluated
  }
}

The result will be that we only see that an IllegalStateException was thrown and not a single report of Atrium

Relates to 387

robstoll avatar Feb 04 '24 19:02 robstoll