> find-word@0.1.0 test > vitest run tests/assets.test.ts RUN v5.0.4 /home/hermes/worktrees/find-word-v0.1.1 ❯ tests/assets.test.ts (2 tests | 2 failed) 243ms ❯ 저장한 한국어 neural 음성 자산 (2) × 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 15ms × 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 227ms ⎯⎯⎯⎯⎯⎯⎯ Failed Tests 2 ⎯⎯⎯⎯⎯⎯⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be '0.1.1' // Object.is equality - Expected: "0.1.1" + Received: undefined ❯ tests/assets.test.ts:26:35 24| describe("저장한 한국어 neural 음성 자산", () => { 25| it("0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다", () => { 26| expect.soft(manifest.version).toBe("0.1.1"); | ^ 27| expect.soft(manifest.provider).toBe("Microsoft Edge online TTS"); 28| expect.soft(manifest.voice).toBe("ko-KR-HyunsuMultilingualNeural"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be 'Microsoft Edge online TTS' // Object.is equality - Expected: "Microsoft Edge online TTS" + Received: undefined ❯ tests/assets.test.ts:27:36 25| it("0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다", () => { 26| expect.soft(manifest.version).toBe("0.1.1"); 27| expect.soft(manifest.provider).toBe("Microsoft Edge online TTS"); | ^ 28| expect.soft(manifest.voice).toBe("ko-KR-HyunsuMultilingualNeural"); 29| expect.soft(manifest.rate).toBe("-6%"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be 'ko-KR-HyunsuMultilingualNeural' // Object.is equality - Expected: "ko-KR-HyunsuMultilingualNeural" + Received: undefined ❯ tests/assets.test.ts:28:33 26| expect.soft(manifest.version).toBe("0.1.1"); 27| expect.soft(manifest.provider).toBe("Microsoft Edge online TTS"); 28| expect.soft(manifest.voice).toBe("ko-KR-HyunsuMultilingualNeural"); | ^ 29| expect.soft(manifest.rate).toBe("-6%"); 30| expect.soft(manifest.pitch).toBe("-4Hz"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[3/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be '-6%' // Object.is equality - Expected: "-6%" + Received: undefined ❯ tests/assets.test.ts:29:32 27| expect.soft(manifest.provider).toBe("Microsoft Edge online TTS"); 28| expect.soft(manifest.voice).toBe("ko-KR-HyunsuMultilingualNeural"); 29| expect.soft(manifest.rate).toBe("-6%"); | ^ 30| expect.soft(manifest.pitch).toBe("-4Hz"); 31| expect.soft(manifest.sampleRate).toBe(24000); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[4/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be '-4Hz' // Object.is equality - Expected: "-4Hz" + Received: undefined ❯ tests/assets.test.ts:30:33 28| expect.soft(manifest.voice).toBe("ko-KR-HyunsuMultilingualNeural"); 29| expect.soft(manifest.rate).toBe("-6%"); 30| expect.soft(manifest.pitch).toBe("-4Hz"); | ^ 31| expect.soft(manifest.sampleRate).toBe(24000); 32| expect.soft(manifest.toolVersions["edge-tts"]).toBe("7.3.1"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[5/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be 24000 // Object.is equality - Expected: 24000 + Received: undefined ❯ tests/assets.test.ts:31:38 29| expect.soft(manifest.rate).toBe("-6%"); 30| expect.soft(manifest.pitch).toBe("-4Hz"); 31| expect.soft(manifest.sampleRate).toBe(24000); | ^ 32| expect.soft(manifest.toolVersions["edge-tts"]).toBe("7.3.1"); 33| expect.soft(manifest.toolVersions.ffmpeg).toMatch(/^ffmpeg version… ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[6/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected undefined to be '7.3.1' // Object.is equality - Expected: "7.3.1" + Received: undefined ❯ tests/assets.test.ts:32:52 30| expect.soft(manifest.pitch).toBe("-4Hz"); 31| expect.soft(manifest.sampleRate).toBe(24000); 32| expect.soft(manifest.toolVersions["edge-tts"]).toBe("7.3.1"); | ^ 33| expect.soft(manifest.toolVersions.ffmpeg).toMatch(/^ffmpeg version… 34| expect(JSON.stringify(manifest)).not.toMatch(/espeak|cookie|author… ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[7/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 0.1.1 neural provider·voice·prosody와 실측 도구 버전을 기록한다 AssertionError: expected '{"generator":"eSpeak NG ko, speed 145…' not to match /espeak|cookie|authorization|trustedc…/i - Expected: /espeak|cookie|authorization|trustedclienttoken/i + Received: "{\"generator\":\"eSpeak NG ko, speed 145, pitch 45, amplitude 100; FFmpeg PCM 16kHz mono s16\",\"toolVersions\":{\"espeak\":\"eSpeak NG text-to-speech: 1.51\",\"ffmpeg\":\"ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers\"},\"source\":\"https://github.com/espeak-ng/espeak-ng\",\"method\":\"자체 작성 문장의 오프라인 포먼트 합성; 외부 녹음·네트워크 TTS 없음\",\"files\":[{\"file\":\"intro.wav\",\"text\":\"으하하하~~ 나는 에스다. 널 위한 행운의 단어를 불러주마, 잘 찾아보거라.\",\"sha256\":\"4c271551d99cd9dffc01f35c176e98b54b4879549543ff8e2c79c6af8d4dc53a\",\"bytes\":259900},{\"file\":\"luck-apple.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘사과’입니다.\",\"sha256\":\"51e6cf35b219f13c0d72ec9633f0c108c3393bc5ef6ae6aca6aa5d00153b4177\",\"bytes\":125658},{\"file\":\"luck-sea.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘바다’입니다.\",\"sha256\":\"6585cb8d50eea173395417fc5fb357f55901665fe45dd07d942f79e202729111\",\"bytes\":123366},{\"file\":\"luck-tree.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘나무’입니다.\",\"sha256\":\"6d188188d1478d0298536e0e03a58883629459dee56c6ae8ab88b4d7170c1def\",\"bytes\":121224},{\"file\":\"luck-hat.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘모자’입니다.\",\"sha256\":\"be8d4287ebce15e221a8908f6b2d7478e789ecc51ba95d65fdf34f130954e7e5\",\"bytes\":121644},{\"file\":\"luck-umbrella.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘우산’입니다.\",\"sha256\":\"188e24932e5e68fb0de8270e5b48128d486da956ad4069afbbcd0ad9af5913ce\",\"bytes\":122178},{\"file\":\"luck-market.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘시장’입니다.\",\"sha256\":\"e58cdfd5a43074179e65edaf5f223dd15ad1accdd2fd547a6d3311de57b78eca\",\"bytes\":124352},{\"file\":\"luck-oil.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘기름’입니다.\",\"sha256\":\"8b1070414191ff87b9531caf0782b13458b246a1f07b51f7ddcff2cd613930f7\",\"bytes\":120286},{\"file\":\"luck-sound.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘소리’입니다.\",\"sha256\":\"052e2c2724c2fcf9d4c68ba3b746a430af0cfc74b42ed6f8317ae2cc5af1c2ad\",\"bytes\":122660},{\"file\":\"luck-meat.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘고기’입니다.\",\"sha256\":\"dcf3d1c84a9ee00ea8a1ea5552ac69b3dc46b9c4160ee3375a4afe38426c0b8d\",\"bytes\":121754},{\"file\":\"luck-furniture.wav\",\"text\":\"오늘의 행운을 담은 단어는 ‘가구’입니다.\",\"sha256\":\"6265e3807ea10eb82e9bb15a7e72dcab5e148277bc49bacfdb2663817d151ddf\",\"bytes\":122164},{\"file\":\"password-apple.wav\",\"text\":\"연습 암호는 ‘다과’, 진짜 암호는 ‘사과’입니다.\",\"sha256\":\"14b7c8c0253784f319a04b568da594d8e46077d03931a36a23e8a7689dd4b928\",\"bytes\":161688},{\"file\":\"password-sea.wav\",\"text\":\"연습 암호는 ‘사다’, 진짜 암호는 ‘바다’입니다.\",\"sha256\":\"832178b1eee4fe29653ca8dfda5bfb356cab83f4f880a704ee9eab937443f872\",\"bytes\":160256},{\"file\":\"password-tree.wav\",\"text\":\"연습 암호는 ‘나루’, 진짜 암호는 ‘나무’입니다.\",\"sha256\":\"ef25aa09f89acadcbb2c43a1f18d0c2da292fae4d87d052868942d08b3825a8d\",\"bytes\":156642},{\"file\":\"password-hat.wav\",\"text\":\"연습 암호는 ‘포자’, 진짜 암호는 ‘모자’입니다.\",\"sha256\":\"aef3f595e1b2d36212d4611f9998d841303e96ee5385639094aebcc984ff8a94\",\"bytes\":158616},{\"file\":\"password-umbrella.wav\",\"text\":\"연습 암호는 ‘부산’, 진짜 암호는 ‘우산’입니다.\",\"sha256\":\"6bc1bf13c3fd1739bc9e490525ecd5839b9a4032faecb9f101a2c68824d57b82\",\"bytes\":162668},{\"file\":\"password-market.wav\",\"text\":\"연습 암호는 ‘지장’, 진짜 암호는 ‘시장’입니다.\",\"sha256\":\"33036e08a06dd33b6aa86e5b78352d2f90e35ac1c7f9f202af2a32e2ceffcfc1\",\"bytes\":166360},{\"file\":\"password-oil.wav\",\"text\":\"연습 암호는 ‘이름’, 진짜 암호는 ‘기름’입니다.\",\"sha256\":\"d88914ab7302112beecb6b2edbe114c3c119ee375985eca9716bf239aea94038\",\"bytes\":157396},{\"file\":\"password-sound.wav\",\"text\":\"연습 암호는 ‘오리’, 진짜 암호는 ‘소리’입니다.\",\"sha256\":\"d3df570902e1f1fb5b2a7c573d57857bf4da547fb97ebdf27f04fbbf29c1170f\",\"bytes\":155298},{\"file\":\"password-meat.wav\",\"text\":\"연습 암호는 ‘보기’, 진짜 암호는 ‘고기’입니다.\",\"sha256\":\"59c422dbf3c2ed7a397e7bf3455a2bf59132f85477765c6ec13673633cdb1e8c\",\"bytes\":157754},{\"file\":\"password-furniture.wav\",\"text\":\"연습 암호는 ‘하구’, 진짜 암호는 ‘가구’입니다.\",\"sha256\":\"c349bd57598eec8543ce488dd86a4c4ddd4ec661ac9e8d7f42d914d545f38f61\",\"bytes\":158998},{\"file\":\"remember-apple.wav\",\"text\":\"‘다과’. 이 단어는 잊으세요. 이제 ‘사과’, 이 단어를 기억하세요.\",\"sha256\":\"3123d84c546ff4e630a8b93d59bd5e668a5de30ea651e56e134d47690aead28b\",\"bytes\":205094},{\"file\":\"remember-sea.wav\",\"text\":\"‘사다’. 이 단어는 잊으세요. 이제 ‘바다’, 이 단어를 기억하세요.\",\"sha256\":\"d802055500865e38b9beffe0213b70314aa59ec181cb1af1897dd010bb5875e3\",\"bytes\":204654},{\"file\":\"remember-tree.wav\",\"text\":\"‘나루’. 이 단어는 잊으세요. 이제 ‘나무’, 이 단어를 기억하세요.\",\"sha256\":\"1e3f340609eb9844b7fc727f0c17a7f9f60245d4e00df2330d734efa97d26a33\",\"bytes\":201206},{\"file\":\"remember-hat.wav\",\"text\":\"‘포자’. 이 단어는 잊으세요. 이제 ‘모자’, 이 단어를 기억하세요.\",\"sha256\":\"8a3cd1ef975d8a6782c018bbe23d9e69b4876fe8e64dcb9971f5025bb7072a4c\",\"bytes\":202530},{\"file\":\"remember-umbrella.wav\",\"text\":\"‘부산’. 이 단어는 잊으세요. 이제 ‘우산’, 이 단어를 기억하세요.\",\"sha256\":\"5c5ab3c30f02d3a3b8188f1d81f4d8f617a9e9783c18da38bf6d4bee9d03709e\",\"bytes\":209448},{\"file\":\"remember-market.wav\",\"text\":\"‘지장’. 이 단어는 잊으세요. 이제 ‘시장’, 이 단어를 기억하세요.\",\"sha256\":\"eb582873b55043a61b80e34b25302f8d52ae9c7d641032ce65ddca8fb9bfb181\",\"bytes\":212988},{\"file\":\"remember-oil.wav\",\"text\":\"‘이름’. 이 단어는 잊으세요. 이제 ‘기름’, 이 단어를 기억하세요.\",\"sha256\":\"d56d8639bf462b1c341c07252666975ff6f3428de74f0bef886019fe0085be57\",\"bytes\":204388},{\"file\":\"remember-sound.wav\",\"text\":\"‘오리’. 이 단어는 잊으세요. 이제 ‘소리’, 이 단어를 기억하세요.\",\"sha256\":\"c3d8e3e75086fd52a38806ea2122542d4fe495e381d4aa4c36e72277449451bf\",\"bytes\":200100},{\"file\":\"remember-meat.wav\",\"text\":\"‘보기’. 이 단어는 잊으세요. 이제 ‘고기’, 이 단어를 기억하세요.\",\"sha256\":\"be4cc7dc1af803a23eb4319d076ecf4c5ab37b56913287f49c3b3c96eb4a75ce\",\"bytes\":201730},{\"file\":\"remember-furniture.wav\",\"text\":\"‘하구’. 이 단어는 잊으세요. 이제 ‘가구’, 이 단어를 기억하세요.\",\"sha256\":\"acc3efbba9ef6bf53a3992a669946b6c58e90c9821e2fb5ef8e8c4a738f8bdf7\",\"bytes\":202972},{\"file\":\"last-apple.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘다과’, ‘사고’, ‘사과’.\",\"sha256\":\"5f583e9af9213cd5dc78abb68e5fcba3dbb7c65d7d8131a53210d8326e5cbb87\",\"bytes\":187732},{\"file\":\"last-sea.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘사다’, ‘보다’, ‘바다’.\",\"sha256\":\"21e589a6f7c262cca5533a8599a9d4fb257028a6e0c42732f6147209ad35ecb6\",\"bytes\":190468},{\"file\":\"last-tree.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘나루’, ‘너무’, ‘나무’.\",\"sha256\":\"915249a9860aa29c36149fc57b04057b2fa6ab9253fdfa1e0837236f84cb7aab\",\"bytes\":186820},{\"file\":\"last-hat.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘포자’, ‘모조’, ‘모자’.\",\"sha256\":\"0ce70943449ec5fb18c57d4ba7ea09a6e995f4bc991db07c70c9a846e16679a1\",\"bytes\":189216},{\"file\":\"last-umbrella.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘부산’, ‘오산’, ‘우산’.\",\"sha256\":\"8e5a3a57fc55a7deae5df5be5425a970b0a4926b74844f0f6fba74d882d8ea73\",\"bytes\":192394},{\"file\":\"last-market.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘지장’, ‘사장’, ‘시장’.\",\"sha256\":\"2419dbb03e18d3528a615b4977405699ab5285ea4b392e45164b625ebb5ff0db\",\"bytes\":201286},{\"file\":\"last-oil.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘이름’, ‘거름’, ‘기름’.\",\"sha256\":\"8a7108a6b23dddb5f2ae1c72edf6c488335ccd322acdb6d96a371e7613d47eb2\",\"bytes\":191000},{\"file\":\"last-sound.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘오리’, ‘수리’, ‘소리’.\",\"sha256\":\"c2b77970b477fd05671c833daaf2fb48aace796e1da54a1f9286fca0a8b7f484\",\"bytes\":185296},{\"file\":\"last-meat.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘보기’, ‘고개’, ‘고기’.\",\"sha256\":\"f1bbcef87d1b2fda6d36ecc484c62c6f1a4a182c12e2e0ac8bb58f494809ddf8\",\"bytes\":185540},{\"file\":\"last-furniture.wav\",\"text\":\"세 단어 중 마지막을 고르세요. ‘하구’, ‘가교’, ‘가구’.\",\"sha256\":\"5e625527e69a3f9a9c508cb9da26252ab621949d7ae9ff41bdd9336627234de0\",\"bytes\":185132},{\"file\":\"first-apple.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘사과’, ‘다과’, ‘사고’.\",\"sha256\":\"d539d03875121570650cac2a2bf800cc67e0a72effaf755e02c870f9569e5028\",\"bytes\":203904},{\"file\":\"first-sea.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘바다’, ‘사다’, ‘보다’.\",\"sha256\":\"2d789349b36dab9bbe784e2fcb8412704f2dd15b22ad63937bad9948720aa5fb\",\"bytes\":207002},{\"file\":\"first-tree.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘나무’, ‘나루’, ‘너무’.\",\"sha256\":\"af4ad056b18af0d376a1df7dda3d7b8419e76cda6ffe57dd71054692aa653fd9\",\"bytes\":203354},{\"file\":\"first-hat.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘모자’, ‘포자’, ‘모조’.\",\"sha256\":\"e34fd5edff5323e45f8621a2adb79ed871d1ce671bd3ac8c4a49a8c703878811\",\"bytes\":205388},{\"file\":\"first-umbrella.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘우산’, ‘부산’, ‘오산’.\",\"sha256\":\"4be32c725583f1579b15be4bbe110b4ab42705221a63621125aa1aa98f7f061c\",\"bytes\":210768},{\"file\":\"first-market.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘시장’, ‘지장’, ‘사장’.\",\"sha256\":\"37925d65ce12429905a1b185824722a34af8d77b15eb7bec3b52665b5c1fbc7c\",\"bytes\":217794},{\"file\":\"first-oil.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘기름’, ‘이름’, ‘거름’.\",\"sha256\":\"0991123aee956c26ca658382102c9b6d0a164fbf2dea45f07a978d2cc1fc6b80\",\"bytes\":205784},{\"file\":\"first-sound.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘소리’, ‘오리’, ‘수리’.\",\"sha256\":\"5b3063285cddd8f46a2c2cbbee1ecc9b64ecdbd287df76df65dec854679ec884\",\"bytes\":201840},{\"file\":\"first-meat.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘고기’, ‘보기’, ‘고개’.\",\"sha256\":\"acf07b6db586616e67e2841a6f122120a5b0b18543047271bd5b8c55e33786e3\",\"bytes\":201712},{\"file\":\"first-furniture.wav\",\"text\":\"세 단어 중 첫 번째를 고르세요. ‘가구’, ‘하구’, ‘가교’.\",\"sha256\":\"acba37fc2641c7073210855d294eb7c6e5f3328652c606186b1b0e569e2d0bf6\",\"bytes\":203872},{\"file\":\"repeat-apple.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘사과’, ‘다과’, ‘사과’, ‘사고’.\",\"sha256\":\"5fcef242c63dc7e86c02a1a5813e409e6392511aad5834510696b0d0499a5ef1\",\"bytes\":215994},{\"file\":\"repeat-sea.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘바다’, ‘사다’, ‘바다’, ‘보다’.\",\"sha256\":\"ef675bfa38f4eb4abac04cc64aa2c3ec416d405f9c67646356c9a8f39fe17d21\",\"bytes\":211180},{\"file\":\"repeat-tree.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘나무’, ‘나루’, ‘나무’, ‘너무’.\",\"sha256\":\"b6a1d2923d90f9dd35b324aea419daf3891b76cc8c5c9551fe5ec1140c2ab0bf\",\"bytes\":206504},{\"file\":\"repeat-hat.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘모자’, ‘포자’, ‘모자’, ‘모조’.\",\"sha256\":\"32cbc9823f5af5f897416bec2c377a8559c82fd3fae66273152826dd000cdc4c\",\"bytes\":208872},{\"file\":\"repeat-umbrella.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘우산’, ‘부산’, ‘우산’, ‘오산’.\",\"sha256\":\"4830662f39bc0c62ee9be89de80a44a837c50063fad8fb63129b865673de5525\",\"bytes\":220408},{\"file\":\"repeat-market.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘시장’, ‘지장’, ‘시장’, ‘사장’.\",\"sha256\":\"0e146387377dc38fc10435e06e8eb8cd30a595092887bf8ee4c9d0e7b577650d\",\"bytes\":232742},{\"file\":\"repeat-oil.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘기름’, ‘이름’, ‘기름’, ‘거름’.\",\"sha256\":\"94de2ef7f7d7f9132f3646c3dc09399de23b81909f3edf4bbd1c5b01fad4d8fe\",\"bytes\":216502},{\"file\":\"repeat-sound.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘소리’, ‘오리’, ‘소리’, ‘수리’.\",\"sha256\":\"7f12b6f49a7b4f64af796aa4ad8cfffc85a6b39e2bc6698f74b420b74af6c7c8\",\"bytes\":205404},{\"file\":\"repeat-meat.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘고기’, ‘보기’, ‘고기’, ‘고개’.\",\"sha256\":\"ba8beeb33bcbe4771aaea9b3832a4c25868f6e34e37b3e3d026e891c07b8e71a\",\"bytes\":203544},{\"file\":\"repeat-furniture.wav\",\"text\":\"두 번 들린 단어를 고르세요. ‘가구’, ‘하구’, ‘가구’, ‘가교’.\",\"sha256\":\"581a94726b08b6cfd3c688f08838a05787ed902ab6d1d4a038e0ff6b34f63c3a\",\"bytes\":208274},{\"file\":\"correction-apple.wav\",\"text\":\"정답은 ‘다과’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘사과’입니다.\",\"sha256\":\"53d1c1b207607e610964e68134a3d35ff521b569e228366ec4eb7c03691724bb\",\"bytes\":256484},{\"file\":\"correction-sea.wav\",\"text\":\"정답은 ‘사다’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘바다’입니다.\",\"sha256\":\"df61f91374b9fbb5817249ae3b6cadfae914d3e97ee2c6d07366ef82080a11db\",\"bytes\":255204},{\"file\":\"correction-tree.wav\",\"text\":\"정답은 ‘나루’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘나무’입니다.\",\"sha256\":\"837c24b18f63a73e135511b2edd48ba12593317de3be4d225622e6d11b1a57da\",\"bytes\":251316},{\"file\":\"correction-hat.wav\",\"text\":\"정답은 ‘포자’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘모자’입니다.\",\"sha256\":\"00d7c21caccbbb6c80ec6218415be1b0a6683a2d509b60821d3556e43353b5dc\",\"bytes\":253208},{\"file\":\"correction-umbrella.wav\",\"text\":\"정답은 ‘부산’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘우산’입니다.\",\"sha256\":\"9bb3ce5b00ccc1632c37638550f329cbb6cda01864433e068f85eb7ccab86370\",\"bytes\":255400},{\"file\":\"correction-market.wav\",\"text\":\"정답은 ‘지장’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘시장’입니다.\",\"sha256\":\"c8152db42c956701cd5e21c588ef62aedaefa922658d4bc0fecf8243548d7054\",\"bytes\":257262},{\"file\":\"correction-oil.wav\",\"text\":\"정답은 ‘이름’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘기름’입니다.\",\"sha256\":\"228759e87b1c80be72ea34ff5b77cb5e4557afca1b73434ca8f6f1c2fedaa836\",\"bytes\":247864},{\"file\":\"correction-sound.wav\",\"text\":\"정답은 ‘오리’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘소리’입니다.\",\"sha256\":\"24f2d52bb865c71fc4735a4aebd69ce0e429a9f68646e73e77adababbe34af93\",\"bytes\":250170},{\"file\":\"correction-meat.wav\",\"text\":\"정답은 ‘보기’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘고기’입니다.\",\"sha256\":\"821caf897ddab107df8435b00b686bf9223e043c91a311edcaa0c3c5eb8c6511\",\"bytes\":253432},{\"file\":\"correction-furniture.wav\",\"text\":\"정답은 ‘하구’입니다. 아니, 잘못 말했어요. 정정한 답은 ‘가구’입니다.\",\"sha256\":\"5d69426f3319fa435ee60b234540dd8d9a07f00900177f03da2770f44511ade8\",\"bytes\":254342},{\"file\":\"middle-apple.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘다과’, ‘사과’, ‘사고’.\",\"sha256\":\"0ecc7a7d27508f73c9064a35609c922bbdd6fce8ebfc155e74f7b78d4e897dae\",\"bytes\":191056},{\"file\":\"middle-sea.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘사다’, ‘바다’, ‘보다’.\",\"sha256\":\"c7828af4e64745d89a6f23fda6c86efb76febe379bab0901c2972a4569947604\",\"bytes\":194176},{\"file\":\"middle-tree.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘나루’, ‘나무’, ‘너무’.\",\"sha256\":\"756d13453c7e13dcfaa65c8cb3497ac8d3a5d12bedb56dcd74e7f1c022392416\",\"bytes\":190516},{\"file\":\"middle-hat.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘포자’, ‘모자’, ‘모조’.\",\"sha256\":\"6ad5ec1e2c2c0de568c55a0c1f0e8361885725a2515cf396c8fe5d2106ae22d0\",\"bytes\":192548},{\"file\":\"middle-umbrella.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘부산’, ‘우산’, ‘오산’.\",\"sha256\":\"a507896dd50f98909c6a9fc0a4bfddfde5c975836e494cd9b7f40b69bc8ec33b\",\"bytes\":196102},{\"file\":\"middle-market.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘지장’, ‘시장’, ‘사장’.\",\"sha256\":\"900024616e512ea6777d08f80e3e2c83815ea1f03b6eeb537d212995474e1048\",\"bytes\":204956},{\"file\":\"middle-oil.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘이름’, ‘기름’, ‘거름’.\",\"sha256\":\"c42389a5ccd3b39a5877a38e647a6abbec6ff6a7eabf3d4c95c0507fa65d6d2f\",\"bytes\":194772},{\"file\":\"middle-sound.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘오리’, ‘소리’, ‘수리’.\",\"sha256\":\"b05ae2042bc973c3d1873fe15b5bc7f2af7e803794315023486efa788048342c\",\"bytes\":188984},{\"file\":\"middle-meat.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘보기’, ‘고기’, ‘고개’.\",\"sha256\":\"d54d6f9b4bd90b840443b9e0b0390a93909eeb81c37af6a9b57ce545bede532d\",\"bytes\":188870},{\"file\":\"middle-furniture.wav\",\"text\":\"세 단어 중 가운데를 고르세요. ‘하구’, ‘가구’, ‘가교’.\",\"sha256\":\"d9318ef33ae1c60630ddda5abeefcbe43626d8f8a9abd5d62efd132eeb77c8fc\",\"bytes\":191024},{\"file\":\"message-apple.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘다과’, ‘사과’. 지금은 빨간 불입니다.\",\"sha256\":\"3867563d5acd2530c72cbe6f98ca2b463ec0c92285069c99c8ba084c45aabfd6\",\"bytes\":316834},{\"file\":\"message-sea.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘사다’, ‘바다’. 지금은 빨간 불입니다.\",\"sha256\":\"b7d8d89d93247eca9aec124f80bf6328d6d88511d05b513ce6d9fa32b3211848\",\"bytes\":317816},{\"file\":\"message-tree.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘나루’, ‘나무’. 지금은 빨간 불입니다.\",\"sha256\":\"9539e5ee87068e241598db2e4fbacb240daa011a2238c9864da8ffde6b644918\",\"bytes\":315930},{\"file\":\"message-hat.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘포자’, ‘모자’. 지금은 빨간 불입니다.\",\"sha256\":\"ccbba6a22c9cbc1231f45fbd7420c6257ac22ac72de8e8c0c97f1cc31bb2b16e\",\"bytes\":317258},{\"file\":\"message-umbrella.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘부산’, ‘우산’. 지금은 빨간 불입니다.\",\"sha256\":\"e980f4476f7275cc5ae24e7ce0e6d9c1e6db027f7cbd1eb39cc5bc4bc07cbf6e\",\"bytes\":320532},{\"file\":\"message-market.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘지장’, ‘시장’. 지금은 빨간 불입니다.\",\"sha256\":\"35432a3ed8dd1e15894ace5aad6f5a66cf28509ba92b8ee47bcaae424cb25ba1\",\"bytes\":325564},{\"file\":\"message-oil.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘이름’, ‘기름’. 지금은 빨간 불입니다.\",\"sha256\":\"814fc749006ed040de58b5236a8d92f0d79683c8eea3b9d095386344f41a47bd\",\"bytes\":317786},{\"file\":\"message-sound.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘오리’, ‘소리’. 지금은 빨간 불입니다.\",\"sha256\":\"e25c867e6c18d906c010816475253d2b10aa3cc4192b5551ba78055d65c461c8\",\"bytes\":313270},{\"file\":\"message-meat.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘보기’, ‘고기’. 지금은 빨간 불입니다.\",\"sha256\":\"f1863e1527b7714ae64f5d752b542e8768b8ed89b5885012283f7ca20742ee00\",\"bytes\":314464},{\"file\":\"message-furniture.wav\",\"text\":\"초록 불이면 앞 단어, 빨간 불이면 뒤 단어입니다. ‘하구’, ‘가구’. 지금은 빨간 불입니다.\",\"sha256\":\"43f87d0e3d92bd132f9ea46e024b9a940736b7399e899866ed42af367a550f78\",\"bytes\":316152},{\"file\":\"mission-apple.wav\",\"text\":\"오른쪽 표지는 ‘사과’, 왼쪽 표지는 ‘다과’입니다.\",\"sha256\":\"36697151a1a57645f5acd9fcca2d13bffa21937e1bbcde08ab2d8d485730145a\",\"bytes\":166540},{\"file\":\"mission-sea.wav\",\"text\":\"오른쪽 표지는 ‘바다’, 왼쪽 표지는 ‘사다’입니다.\",\"sha256\":\"2741f404e39ec64af7f73452f82c68b3ae1d377e9f40a586034f9b147fbfb114\",\"bytes\":165122},{\"file\":\"mission-tree.wav\",\"text\":\"오른쪽 표지는 ‘나무’, 왼쪽 표지는 ‘나루’입니다.\",\"sha256\":\"8a7bb2c795d8877433be2621b69a48c2b6c5c1e192c094c01257fb93eb5d9449\",\"bytes\":160834},{\"file\":\"mission-hat.wav\",\"text\":\"오른쪽 표지는 ‘모자’, 왼쪽 표지는 ‘포자’입니다.\",\"sha256\":\"26dfa26bd8dcb9d63c231dfc37bf25970f4a8dadcaa40347dd15974887e948b1\",\"bytes\":163102},{\"file\":\"mission-umbrella.wav\",\"text\":\"오른쪽 표지는 ‘우산’, 왼쪽 표지는 ‘부산’입니다.\",\"sha256\":\"79be98918c3fb4e5e4e2e51b2bfa5e5aad6c600478ae1a34c055b16ce71d5264\",\"bytes\":167480},{\"file\":\"mission-market.wav\",\"text\":\"오른쪽 표지는 ‘시장’, 왼쪽 표지는 ‘지장’입니다.\",\"sha256\":\"8f18144a91072be37dc31a161fe6e9bb1980ab36af0edee8d7a359397b8bb8ac\",\"bytes\":170724},{\"file\":\"mission-oil.wav\",\"text\":\"오른쪽 표지는 ‘기름’, 왼쪽 표지는 ‘이름’입니다.\",\"sha256\":\"1ceabc58f445f7bd5609b2f9de80b309ad64d11c888c7261cf84315a7637a748\",\"bytes\":161758},{\"file\":\"mission-sound.wav\",\"text\":\"오른쪽 표지는 ‘소리’, 왼쪽 표지는 ‘오리’입니다.\",\"sha256\":\"6651b14caf4e54069730f137e5d8c3c1e5a9c66aa72f15623cc442edb967cadb\",\"bytes\":160162},{\"file\":\"mission-meat.wav\",\"text\":\"오른쪽 표지는 ‘고기’, 왼쪽 표지는 ‘보기’입니다.\",\"sha256\":\"5d2ab3071fd27e850d99c50ad37905096ef28267b660a35992559bdc126c4931\",\"bytes\":162626},{\"file\":\"mission-furniture.wav\",\"text\":\"오른쪽 표지는 ‘가구’, 왼쪽 표지는 ‘하구’입니다.\",\"sha256\":\"080307bb46bb47378c0c03437d9ef44118a5d4ea17b2b6d70e5cbc710c71ba78\",\"bytes\":163884}]}" ❯ tests/assets.test.ts:34:42 32| expect.soft(manifest.toolVersions["edge-tts"]).toBe("7.3.1"); 33| expect.soft(manifest.toolVersions.ffmpeg).toMatch(/^ffmpeg version… 34| expect(JSON.stringify(manifest)).not.toMatch(/espeak|cookie|author… | ^ 35| }); 36| it("101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다", (… ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[8/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: intro.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[9/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: intro.wav: expected undefined to be 8.1205 // Object.is equality - Expected: 8.1205 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[10/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[11/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-apple.wav: expected undefined to be 3.9254375 // Object.is equality - Expected: 3.9254375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[12/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[13/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-sea.wav: expected undefined to be 3.8538125 // Object.is equality - Expected: 3.8538125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[14/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[15/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-tree.wav: expected undefined to be 3.786875 // Object.is equality - Expected: 3.786875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[16/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[17/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-hat.wav: expected undefined to be 3.8 // Object.is equality - Expected: 3.8 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[18/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[19/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-umbrella.wav: expected undefined to be 3.8166875 // Object.is equality - Expected: 3.8166875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[20/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[21/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-market.wav: expected undefined to be 3.884625 // Object.is equality - Expected: 3.884625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[22/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[23/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-oil.wav: expected undefined to be 3.7575625 // Object.is equality - Expected: 3.7575625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[24/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[25/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-sound.wav: expected undefined to be 3.83175 // Object.is equality - Expected: 3.83175 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[26/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[27/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-meat.wav: expected undefined to be 3.8034375 // Object.is equality - Expected: 3.8034375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[28/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[29/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: luck-furniture.wav: expected undefined to be 3.81625 // Object.is equality - Expected: 3.81625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[30/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[31/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-apple.wav: expected undefined to be 5.051375 // Object.is equality - Expected: 5.051375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[32/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[33/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-sea.wav: expected undefined to be 5.006625 // Object.is equality - Expected: 5.006625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[34/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[35/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-tree.wav: expected undefined to be 4.8936875 // Object.is equality - Expected: 4.8936875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[36/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[37/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-hat.wav: expected undefined to be 4.955375 // Object.is equality - Expected: 4.955375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[38/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[39/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-umbrella.wav: expected undefined to be 5.082 // Object.is equality - Expected: 5.082 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[40/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[41/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-market.wav: expected undefined to be 5.197375 // Object.is equality - Expected: 5.197375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[42/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[43/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-oil.wav: expected undefined to be 4.91725 // Object.is equality - Expected: 4.91725 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[44/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[45/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-sound.wav: expected undefined to be 4.8516875 // Object.is equality - Expected: 4.8516875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[46/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[47/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-meat.wav: expected undefined to be 4.9284375 // Object.is equality - Expected: 4.9284375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[48/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[49/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: password-furniture.wav: expected undefined to be 4.9673125 // Object.is equality - Expected: 4.9673125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[50/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[51/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-apple.wav: expected undefined to be 6.4078125 // Object.is equality - Expected: 6.4078125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[52/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[53/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-sea.wav: expected undefined to be 6.3940625 // Object.is equality - Expected: 6.3940625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[54/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[55/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-tree.wav: expected undefined to be 6.2863125 // Object.is equality - Expected: 6.2863125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[56/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[57/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-hat.wav: expected undefined to be 6.3276875 // Object.is equality - Expected: 6.3276875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[58/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[59/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-umbrella.wav: expected undefined to be 6.543875 // Object.is equality - Expected: 6.543875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[60/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[61/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-market.wav: expected undefined to be 6.6545 // Object.is equality - Expected: 6.6545 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[62/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[63/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-oil.wav: expected undefined to be 6.38575 // Object.is equality - Expected: 6.38575 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[64/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[65/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-sound.wav: expected undefined to be 6.25175 // Object.is equality - Expected: 6.25175 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[66/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[67/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-meat.wav: expected undefined to be 6.3026875 // Object.is equality - Expected: 6.3026875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[68/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[69/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: remember-furniture.wav: expected undefined to be 6.3415 // Object.is equality - Expected: 6.3415 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[70/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[71/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-apple.wav: expected undefined to be 5.86525 // Object.is equality - Expected: 5.86525 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[72/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[73/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-sea.wav: expected undefined to be 5.95075 // Object.is equality - Expected: 5.95075 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[74/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[75/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-tree.wav: expected undefined to be 5.83675 // Object.is equality - Expected: 5.83675 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[76/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[77/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-hat.wav: expected undefined to be 5.911625 // Object.is equality - Expected: 5.911625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[78/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[79/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-umbrella.wav: expected undefined to be 6.0109375 // Object.is equality - Expected: 6.0109375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[80/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[81/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-market.wav: expected undefined to be 6.2888125 // Object.is equality - Expected: 6.2888125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[82/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[83/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-oil.wav: expected undefined to be 5.967375 // Object.is equality - Expected: 5.967375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[84/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[85/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-sound.wav: expected undefined to be 5.789125 // Object.is equality - Expected: 5.789125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[86/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[87/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-meat.wav: expected undefined to be 5.79675 // Object.is equality - Expected: 5.79675 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[88/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[89/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: last-furniture.wav: expected undefined to be 5.784 // Object.is equality - Expected: 5.784 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[90/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[91/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-apple.wav: expected undefined to be 6.370625 // Object.is equality - Expected: 6.370625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[92/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[93/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-sea.wav: expected undefined to be 6.4674375 // Object.is equality - Expected: 6.4674375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[94/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[95/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-tree.wav: expected undefined to be 6.3534375 // Object.is equality - Expected: 6.3534375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[96/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[97/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-hat.wav: expected undefined to be 6.417 // Object.is equality - Expected: 6.417 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[98/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[99/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-umbrella.wav: expected undefined to be 6.585125 // Object.is equality - Expected: 6.585125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[100/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[101/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-market.wav: expected undefined to be 6.8046875 // Object.is equality - Expected: 6.8046875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[102/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[103/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-oil.wav: expected undefined to be 6.429375 // Object.is equality - Expected: 6.429375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[104/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[105/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-sound.wav: expected undefined to be 6.306125 // Object.is equality - Expected: 6.306125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[106/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[107/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-meat.wav: expected undefined to be 6.302125 // Object.is equality - Expected: 6.302125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[108/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[109/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: first-furniture.wav: expected undefined to be 6.369625 // Object.is equality - Expected: 6.369625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[110/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[111/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-apple.wav: expected undefined to be 6.7484375 // Object.is equality - Expected: 6.7484375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[112/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[113/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-sea.wav: expected undefined to be 6.598 // Object.is equality - Expected: 6.598 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[114/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[115/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-tree.wav: expected undefined to be 6.451875 // Object.is equality - Expected: 6.451875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[116/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[117/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-hat.wav: expected undefined to be 6.525875 // Object.is equality - Expected: 6.525875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[118/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[119/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-umbrella.wav: expected undefined to be 6.886375 // Object.is equality - Expected: 6.886375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[120/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[121/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-market.wav: expected undefined to be 7.2718125 // Object.is equality - Expected: 7.2718125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[122/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[123/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-oil.wav: expected undefined to be 6.7643125 // Object.is equality - Expected: 6.7643125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[124/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[125/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-sound.wav: expected undefined to be 6.4175 // Object.is equality - Expected: 6.4175 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[126/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[127/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-meat.wav: expected undefined to be 6.359375 // Object.is equality - Expected: 6.359375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[128/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[129/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: repeat-furniture.wav: expected undefined to be 6.5071875 // Object.is equality - Expected: 6.5071875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[130/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[131/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-apple.wav: expected undefined to be 8.01375 // Object.is equality - Expected: 8.01375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[132/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[133/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-sea.wav: expected undefined to be 7.97375 // Object.is equality - Expected: 7.97375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[134/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[135/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-tree.wav: expected undefined to be 7.85225 // Object.is equality - Expected: 7.85225 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[136/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[137/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-hat.wav: expected undefined to be 7.911375 // Object.is equality - Expected: 7.911375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[138/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[139/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-umbrella.wav: expected undefined to be 7.979875 // Object.is equality - Expected: 7.979875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[140/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[141/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-market.wav: expected undefined to be 8.0380625 // Object.is equality - Expected: 8.0380625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[142/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[143/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-oil.wav: expected undefined to be 7.744375 // Object.is equality - Expected: 7.744375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[144/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[145/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-sound.wav: expected undefined to be 7.8164375 // Object.is equality - Expected: 7.8164375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[146/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[147/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-meat.wav: expected undefined to be 7.918375 // Object.is equality - Expected: 7.918375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[148/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[149/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: correction-furniture.wav: expected undefined to be 7.9468125 // Object.is equality - Expected: 7.9468125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[150/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[151/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-apple.wav: expected undefined to be 5.969125 // Object.is equality - Expected: 5.969125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[152/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[153/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-sea.wav: expected undefined to be 6.066625 // Object.is equality - Expected: 6.066625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[154/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[155/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-tree.wav: expected undefined to be 5.95225 // Object.is equality - Expected: 5.95225 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[156/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[157/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-hat.wav: expected undefined to be 6.01575 // Object.is equality - Expected: 6.01575 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[158/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[159/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-umbrella.wav: expected undefined to be 6.1268125 // Object.is equality - Expected: 6.1268125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[160/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[161/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-market.wav: expected undefined to be 6.4035 // Object.is equality - Expected: 6.4035 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[162/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[163/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-oil.wav: expected undefined to be 6.08525 // Object.is equality - Expected: 6.08525 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[164/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[165/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-sound.wav: expected undefined to be 5.904375 // Object.is equality - Expected: 5.904375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[166/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[167/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-meat.wav: expected undefined to be 5.9008125 // Object.is equality - Expected: 5.9008125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[168/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[169/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: middle-furniture.wav: expected undefined to be 5.968125 // Object.is equality - Expected: 5.968125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[170/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[171/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-apple.wav: expected undefined to be 9.8996875 // Object.is equality - Expected: 9.8996875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[172/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[173/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-sea.wav: expected undefined to be 9.930375 // Object.is equality - Expected: 9.930375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[174/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[175/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-tree.wav: expected undefined to be 9.8714375 // Object.is equality - Expected: 9.8714375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[176/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[177/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-hat.wav: expected undefined to be 9.9129375 // Object.is equality - Expected: 9.9129375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[178/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[179/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-umbrella.wav: expected undefined to be 10.01525 // Object.is equality - Expected: 10.01525 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[180/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[181/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-market.wav: expected undefined to be 10.1725 // Object.is equality - Expected: 10.1725 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[182/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[183/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-oil.wav: expected undefined to be 9.9294375 // Object.is equality - Expected: 9.9294375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[184/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[185/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-sound.wav: expected undefined to be 9.7883125 // Object.is equality - Expected: 9.7883125 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[186/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[187/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-meat.wav: expected undefined to be 9.825625 // Object.is equality - Expected: 9.825625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[188/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[189/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: message-furniture.wav: expected undefined to be 9.878375 // Object.is equality - Expected: 9.878375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[190/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-apple.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[191/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-apple.wav: expected undefined to be 5.203 // Object.is equality - Expected: 5.203 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[192/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-sea.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[193/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-sea.wav: expected undefined to be 5.1586875 // Object.is equality - Expected: 5.1586875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[194/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-tree.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[195/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-tree.wav: expected undefined to be 5.0246875 // Object.is equality - Expected: 5.0246875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[196/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-hat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[197/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-hat.wav: expected undefined to be 5.0955625 // Object.is equality - Expected: 5.0955625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[198/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-umbrella.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[199/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-umbrella.wav: expected undefined to be 5.232375 // Object.is equality - Expected: 5.232375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[200/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-market.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[201/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-market.wav: expected undefined to be 5.33375 // Object.is equality - Expected: 5.33375 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[202/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-oil.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[203/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-oil.wav: expected undefined to be 5.0535625 // Object.is equality - Expected: 5.0535625 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[204/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-sound.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[205/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-sound.wav: expected undefined to be 5.0036875 // Object.is equality - Expected: 5.0036875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[206/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-meat.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[207/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-meat.wav: expected undefined to be 5.0806875 // Object.is equality - Expected: 5.0806875 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[208/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-furniture.wav: expected 16000 to be 24000 // Object.is equality - Expected + Received - 24000 + 16000 ❯ tests/assets.test.ts:51:54 49| expect(file.readUInt16LE(20)).toBe(1); 50| expect(file.readUInt16LE(22)).toBe(1); 51| expect.soft(file.readUInt32LE(24), entry.file).toBe(24000); | ^ 52| expect(file.readUInt16LE(34)).toBe(16); 53| expect(file.toString("ascii", 36, 40)).toBe("data"); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[209/210]⎯ FAIL tests/assets.test.ts > 저장한 한국어 neural 음성 자산 > 101개 전체 원문·SHA-256·bytes·duration과 24kHz mono PCM16 신호를 검증한다 AssertionError: mission-furniture.wav: expected undefined to be 5.12 // Object.is equality - Expected: 5.12 + Received: undefined ❯ tests/assets.test.ts:56:47 54| expect(file.readUInt32LE(40)).toBe(file.length - 44); 55| const duration = (file.length - 44) / 2 / file.readUInt32LE(24); 56| expect.soft(entry.duration, entry.file).toBe(duration); | ^ 57| expect(duration).toBeGreaterThanOrEqual(1); 58| expect(duration).toBeLessThanOrEqual(20); ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[210/210]⎯ Test Files 1 failed (1) Tests 2 failed (2) Start at 06:48:22 Duration 1.66s (tests 57%, setup 28%, transform 12%, import 3%, worker 1%)