npm Community Forum (Archive)

The npm community forum has been discontinued.

To discuss usage of npm, visit the GitHub Support Community.

tink: fs overrides test suite

Hi! You know what would be really fantastic? If someone were willing to help get the test suite for the fs overrides started. It’s a thing I’ve avoided so far because of the prototype nature of tink, but now that things are starting to settle, I’m finding my attention getting drawn elsewhere, and some help on this front would be absolutely invaluable.

This issue is distinct from tink: Refactor and finish fs.js, and not a #good-first-patch, because I expect it to be fairly tricky to bootstrap the testing stuff.

A lot of the testing setup is done, and most of the work for this is writing individual tests for all the little fs functions and any special behaviors, plus their fallbacks.

The trickiest part of all this is coming up with an initial way of mocking up the necessary components such that the tink overrides actually work when tested. Most of this is likely just mocking up package-lock.json files, plus setting up some dummy node_modules directory, which can be done with tacks, the library we use for generating filesystem fixtures.

If there’s anything else that needs special fixtures that you’d end up needing help with, just let me know and we can work on something together. I’d just really appreciate support on the testing front. Your work on these tests would also help set major groundwork towards testing the rest of tink as we try to approach 100% test coverage across the app.

Interested in picking this up? Just reply below and you’ll be all set. Hopefully, you can get started in the next week or two! This is probably one of the most important tink components to have thorough test for, so you bet I’d be incredibly thankful.

Hi, I am happy to help with this. I can start with understanding the test setup and add some simple cases, and then move on to the more tricky mocking stuff.

That sounds like a good approach to start. Let me know if you have any questions!