1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2026-04-26 15:24:24 +02:00
Commit Graph

2 Commits

Author SHA1 Message Date
michael-kerscher ce9d74742d tests: fix the includes in test/tsconfig.json and switch to modern node18 module (#2740)
- typescript checking was not properly working before in src/ directory
- https://www.typescriptlang.org/tsconfig/#node16node18nodenext: node18
is the up-to-date module. This picks the module resolution "node16"
- https://www.typescriptlang.org/tsconfig/#moduleResolution recommends
not using node (node10) in modern code
- Update target to ES2024
2025-05-07 09:22:16 +02:00
michael-kerscher 48b2b5c312 Add a test framework to test the JS part of the course (#2471)
This is a first draft for a test framework for testing the JS part of
the book that is discussed in #2462

It is using [webdriverIO](https://webdriver.io/) and the webdriverIO
[Expect API](https://webdriver.io/docs/api/expect-webdriverio/) in
combination with [Mocha](https://mochajs.org/). WebdriverIO is taking
care of accessing the webpage with a real browser and can access the
state of the page so behavior can be asserted.

Currently only a small test for the speaker-notes implementation demos
the functionality.

The [Static Server
Service](https://webdriver.io/docs/static-server-service/) is used to
serve the book in a way that the test runner can access it.

A CI integration can look like https://webdriver.io/docs/githubactions/
and is implemented with a headless setup. In CI it uses the language
variable to set environment variable that configures where the built
book should be mounted from

---------

Co-authored-by: Martin Geisler <martin@geisler.net>
2024-12-04 09:06:58 +00:00