andywer/leakage

Rewrite of the lib for reliable async testing ๐ŸŽ‰๐ŸŽ‰

andywer opened this issue ยท 1 comments

Hey everyone ๐Ÿ™Œ

It took sooo long, but I finally came up with a solution for async testing that can be trusted!

In the branch rewrite there is an almost complete rewrite of the lib that supports async testing using iterate.async() and an improved readme.

Since it's such a big change I decided to open this issue as a replacement for the long-standing #7.

Highlights:

  • Async testing using iterate.async()
  • Changed API: iterate(iterations: number, iterator: Function) => iterate(iterator: Function, options: ?Object)
  • Dedicated tests to check the library's own heap footprint
  • Leaks have been successfully detected, non-leaky tests have not thrown, lib's footprint has been very small; repeatedly over multiple builds, locally as well as on travis

Left to do in the next few days:

  • Overhaul readme (not yet completely done)
  • Fix small maintenance issues

Will close this issue when the new version is released, which will we very soon ๐Ÿ˜‰

Stay tuned!

Leakage v0.3

Hallelujah!

It took almost half a year and four tries of rewriting the library. It is safe to say that this baby was born out of sweat and tears!

But here it is: Asynchronous memory leak testing for node.

There is also a slightly changed API that shall bring us joy in the future and there are extra heap footprint tests to make sure leakage itself won't impact heap snapshotting much.

Enjoy!