ttty icon indicating copy to clipboard operation
ttty copied to clipboard

Add proper test coverage

Open mkrl opened this issue 4 years ago • 0 comments

Is your feature request related to a problem? Please describe.

Every good piece of software has tests. We don't and it's a good chance to have them added.

Describe the solution you'd like

We could start with simple unit tests with the DOM API and terminal instance mocked. Assert DOM changes being made under different edge cases & conditions. Assert correct instance fields have been mutated & modified. Assert keyboard events performing what they should perform under different conditions, etc.

Additional context

Vitest should be used as a test runner since we're already on Vite. Here's a checklist:

  1. Write minimal tests covering everything in src/api
  2. Create an npm test script
  3. Hook up into the test GH action workflow (after "Typecheck")

https://github.com/mkrl/ttty/blob/879d889df997c3b98f42b931bc9f2fc15468448c/.github/workflows/test.yml#L18-L19

Not a very trivial task, but we could start a discussion here and work on adding tests together.

mkrl avatar Oct 16 '21 20:10 mkrl