gleam-lang / tree-sitter-gleam

🌳 A tree-sitter grammar for the Gleam programming language
Apache License 2.0
71 stars 13 forks source link

add integration test CI #32

Closed the-mikedavis closed 2 years ago

the-mikedavis commented 2 years ago

Tree-sitter-elixir has a similar mechanism for testing against real elixir repos. That shell script is run in tree-sitter-elixir's test CI.

This just tests the stdlib and should be passing after #31. We could expand this to run against more repos with gleam source in them. It might also be a good idea to run this on a cron instead of along with the test CI. What do you think?

the-mikedavis commented 2 years ago

The more the merrier I say 😀

Elixir has quite a few:

https://github.com/elixir-lang/tree-sitter-elixir/blob/5d0c1bfcdf8aaad225525acad930a972b319a675/scripts/integration_test.sh#L19

repos="elixir-lang/elixir elixir-lang/ex_doc elixir-plug/plug elixir-ecto/ecto dashbitco/broadway elixir-nx/nx elixir-nx/axon livebook-dev/livebook"

The only drawback to having many repos is that if a file gets committed with invalid syntax then it will fail the CI here (for example https://github.com/elixir-lang/elixir/pull/11553) but I don't see much risk of that with gleam.

Are there any repos in particular that you would like be included? I figure pretty much anything under @gleam-lang should probably be tested