Initial Commit
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
import { readFile, stat } from "node:fs/promises";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { decodeWav } from "@suaveplan/audio-decode-wav";
|
||||
import { describe, expect, it } from "@suaveplan/testing/runner";
|
||||
import { CHANNELS, SAMPLE_RATE } from "../../src/manifest/manifest.js";
|
||||
|
||||
const WAV_URL = new URL(
|
||||
"../../files/outdoor-swimming-pool.wav",
|
||||
import.meta.url
|
||||
);
|
||||
|
||||
describe("integration: file-presence", () => {
|
||||
it("outdoor-swimming-pool.wav exists on disk and decodes", {
|
||||
timeout: 30000,
|
||||
}, async () => {
|
||||
const path = fileURLToPath(WAV_URL);
|
||||
const meta = await stat(path);
|
||||
expect(meta.isFile()).toBe(true);
|
||||
expect(meta.size).toBeGreaterThan(0);
|
||||
|
||||
const bytes = await readFile(path);
|
||||
const decoded = await decodeWav(new Uint8Array(bytes));
|
||||
expect(decoded.channels).toBe(CHANNELS);
|
||||
expect(decoded.sampleRate).toBe(SAMPLE_RATE);
|
||||
expect(decoded.channelData.length).toBe(CHANNELS);
|
||||
expect(decoded.bytesDecoded).toBe(meta.size);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user