tsdx で作成したプロジェクトで test の内容がキャッシュされる件
tsdx の basic template で作成したプロジェクトで何故か以下のようにテストが落ちた際に、テストの内容がキャッシュされているような現象に遭遇しました。
以下のように test/sample.test.ts
のテストが落ちているのに、内容が test/blah.test.ts
という古いものになっていました。
$ yarn test yarn run v1.21.1 $ tsdx test FAIL test/sample.test.ts ● Test suite failed to run test/blah.test.ts:1:10 - error TS2305: Module '"../src"' has no exported member 'sum'. 1 import { sum } from '../src'; ~~~ Test Suites: 1 failed, 1 total Tests: 0 total Snapshots: 0 total Time: 1.749s Ran all test suites. error Command failed with exit code 1. info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. $
調べたところ tsdx の issue にも報告されていました。
どうやら ts-jest のキャッシュが効いてしまってい様子。たぶん。
ということで、上記の issue に書いてあるとおり、 tsdx test
に --no-cache
オプションを指定したら、うまくテストが通りました。
これ、みんな嵌りそうだから、デフォルトで --no-cache
をつけていい気もするけど。。。キャッシュがなくなるペナルティもありそうだから微妙かな