Skip to content

Commit

Permalink
tests: Added a test to check that detections above the nyquist freq a…
Browse files Browse the repository at this point in the history
…re excluded
  • Loading branch information
mbsantiago committed Nov 24, 2023
1 parent 14aefaf commit 986cfc4
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 4 deletions.
9 changes: 5 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,11 @@ experiments/*
.virtual_documents
.ipynb_checkpoints
*.ipynb
!batdetect2_notebook.ipynb

# Batdetect Models [Include]
!batdetect2/models/*.pth.tar

# Bump2version
.bumpversion.cfg

# DO Include
!batdetect2_notebook.ipynb
!batdetect2/models/*.pth.tar
!tests/data/*.wav
Binary file added tests/data/20230322_172000_selec2.wav
Binary file not shown.
23 changes: 23 additions & 0 deletions tests/test_detections.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
"""Test suite to ensure that model detections are not incorrect."""

import os

from batdetect2 import api

DATA_DIR = os.path.join(os.path.dirname(__file__), "data")


def test_no_detections_above_nyquist():
"""Test that no detections are made above the nyquist frequency."""
# Recording donated by @@kdarras
path = os.path.join(DATA_DIR, "20230322_172000_selec2.wav")

# This recording has a sampling rate of 192 kHz
nyquist = 192_000 / 2

output = api.process_file(path)
predictions = output["pred_dict"]
assert len(predictions["annotation"]) != 0
assert all(
pred["high_freq"] < nyquist for pred in predictions["annotation"]
)

0 comments on commit 986cfc4

Please sign in to comment.