microsoft / microsoft/TypeScript-TmLanguage

Allow language tests to be used by other Language extensions

Open
#714 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Infrastructure Suggestion
Dominant language
TypeScript
Stars
471
Forks
149
PR merge metrics
No merged PRs in 30d

Description

TS and JS Grammar Extension version: 0.0.49 / latest

As a VSCode Programming Language Extension creator I want to test my tmLanguage file using the TypeScript-TmLanguage test suite to ensure my extension supports all future and current TS language use-cases.

I've been building an extension that provides language support for jest spec.tsx/spec.ts files. Since I'm extending from TypeScript-TmLanguage, I'd like to use the snapshot tests in this repo to ensure any TypeScript use-cases are covered.

I made a PR, #713 , to lay the groundwork for that by abstracting the snapshot building process into a class that you can pass general configurations to.

It'd be nice if the testing build helpers and snapshot baselines lived in its own package and could be imported, however not sure the implications of that for ya'll...

Any thoughts?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing PR #713 and the existing snapshot tests and build helpers. Determine how the snapshot baselines and testing helpers could be separated into an importable package for other language extensions, with the TypeScript test suite still covering current and future TypeScript use cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.