Shinmera / parachute

An extensible and cross-compatible testing framework.
https://shinmera.github.io/parachute
zlib License
97 stars 9 forks source link

Adding timeouts #29

Closed marcoxa closed 1 year ago

marcoxa commented 3 years ago

Hi

how difficult will it be to add timeouts to PARACHUTE?

Meaning having

(define-test too-slow
  :timeout 42
  (sleep 100))

Producing a failure after 42 seconds? (Forget about the content of the code and whether it can be killed or not)

Thanks

MA

Shinmera commented 3 years ago

If you're fine with an sbcl-only solution, not very, using sb-ext:with-timeout. Portably.... well, much more difficult for sure.

marcoxa commented 3 years ago

Portably is the name of the game.

I presume some hacking of bordeaux-threads is in order.

Shinmera commented 1 year ago

Added *abort-on-timeout-p*, which if set to true will try to kill tests that exceed their time limit.