diff --git a/api/tests/music/test.opus b/api/tests/music/test.opus
new file mode 100644
index 0000000000000000000000000000000000000000..c3ca732b3e5032f35d3127597d62b95a155f1bd6
Binary files /dev/null and b/api/tests/music/test.opus differ
diff --git a/api/tests/music/test_metadata.py b/api/tests/music/test_metadata.py
index 1dfe927a07cde6e69f059d2a50f125a082331198..f105b6b7e3b627defe40c60105d2038e9883e50f 100644
--- a/api/tests/music/test_metadata.py
+++ b/api/tests/music/test_metadata.py
@@ -9,6 +9,26 @@ from funkwhale_api.music import metadata
 DATA_DIR = os.path.dirname(os.path.abspath(__file__))
 
 
+@pytest.mark.parametrize(
+    "field,value",
+    [
+        ("title", "Peer Gynt Suite no. 1, op. 46: I. Morning"),
+        ("artist", "Edvard Grieg"),
+        ("album", "Peer Gynt Suite no. 1, op. 46"),
+        ("date", datetime.date(2012, 8, 15)),
+        ("track_number", 1),
+        ("musicbrainz_albumid", uuid.UUID("a766da8b-8336-47aa-a3ee-371cc41ccc75")),
+        ("musicbrainz_recordingid", uuid.UUID("bd21ac48-46d8-4e78-925f-d9cc2a294656")),
+        ("musicbrainz_artistid", uuid.UUID("013c8e5b-d72a-4cd3-8dee-6c64d6125823")),
+    ],
+)
+def test_can_get_metadata_from_opus_file(field, value):
+    path = os.path.join(DATA_DIR, "test.opus")
+    data = metadata.Metadata(path)
+
+    assert data.get(field) == value
+
+
 @pytest.mark.parametrize(
     "field,value",
     [