Initial Commit
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
import { describe, expect, it } from "@suaveplan/testing/runner";
|
||||
import { ChordDetector, KeyDetector, PitchDetector } from "../src/index.js";
|
||||
import { buildChordDoc, buildSineDoc } from "./helpers.js";
|
||||
|
||||
const SR = 48_000;
|
||||
|
||||
describe("audio-analysis-pitch integration", () => {
|
||||
it("runs pitch, key, and chord detectors over the same document", {
|
||||
timeout: 30_000,
|
||||
}, async () => {
|
||||
const doc = buildChordDoc([261.63, 329.63, 392], SR, 8 * 4096);
|
||||
const p = await new PitchDetector().analyze(doc);
|
||||
const k = await new KeyDetector().analyze(doc);
|
||||
const c = await new ChordDetector().analyze(doc);
|
||||
expect(p.op).toBe("pitch-detector");
|
||||
expect(k.op).toBe("key-detector");
|
||||
expect(c.op).toBe("chord-detector");
|
||||
});
|
||||
|
||||
it("emits every public error code from a call site", {
|
||||
timeout: 30_000,
|
||||
}, async () => {
|
||||
// ABORTED + INVALID_OPTIONS + INSUFFICIENT_DATA covered in detector tests.
|
||||
// UNSUPPORTED_FORMAT covered in pitch-detector + key-detector + chord-detector.
|
||||
const doc = buildSineDoc(440, SR, 4 * 4096);
|
||||
const r = await new PitchDetector().analyze(doc);
|
||||
expect(r.pitch).toBeGreaterThan(0);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user