Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more specification tests #100

Open
kaleidawave opened this issue Dec 20, 2023 · 2 comments
Open

Add more specification tests #100

kaleidawave opened this issue Dec 20, 2023 · 2 comments
Labels
good-first-issue PRs welcome 🙏

Comments

@kaleidawave
Copy link
Owner

kaleidawave commented Dec 20, 2023

If you haven't seen already Ezno has a document that outlines all its current checking capabilities!

image

Each section contains error diagnostics that arise when checking the code block above. and it's not all aesthetic these code blocks are tested against the checker with a custom testing crate

The aim of this document is to break down the features into parts so

  • we know what is currently implemented
  • we know what is not currently implemented (via to_implement.md)
  • Find regressions in behaviour after fixing or adding new features (newer features breaking older checker features)
  • Test performance of parts or the the whole suite

At the time of writing. 129 tests currently pass

Important

Ezno will hopefully be useful on new projects with little dependencies at around ~250 tests passing. At the around the 400-500 mark it might be ready for existing projects.

I need your help in writing more

  1. Write them in staging, merge them either into to_implement.md if it doesn't work or if they do, then specification.md
  2. Optionally write corresponding issues for failing specification tests
  3. Check existing specification.md for improvements to coverage or invalid cases

Tip

Maybe you have a favourite JS feature or something you think is great that TSC does great at checking and isn't currently covered. Then it would be great to add it!

this is a general issue, that can relate to many pull requests

@kaleidawave kaleidawave added the good-first-issue PRs welcome 🙏 label Dec 20, 2023
@kaleidawave
Copy link
Owner Author

Will come back to this add more guidance in a few weeks. Just realised I should go into more detail about the difference to Ezno and TSC errors/diagnostics. I haven't published the document which shows a comparison yet...

@kaleidawave
Copy link
Owner Author

Notable areas that currently don't have specification tests for to_implement.md

  • finally
  • function .call, .bind etc
  • named exports and other package.json properties
  • ... things: spread into rest parameter and across regular parameters
  • enumerable, configurable, writeable on properties etc
  • Object. methods
  • Cyclic function calls
  • await and Promise
  • switch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good-first-issue PRs welcome 🙏
Projects
None yet
Development

No branches or pull requests

1 participant