[scrobbles] Update webhook view permissions and small template changes
This commit is contained in:
@ -1,12 +1,12 @@
|
||||
from datetime import datetime, timedelta
|
||||
from unittest.mock import patch, MagicMock
|
||||
from django.utils import timezone
|
||||
from django.contrib.auth import get_user_model
|
||||
from unittest.mock import MagicMock, patch
|
||||
|
||||
import pytest
|
||||
import time_machine
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.urls import reverse
|
||||
from music.models import Track, Artist, Album
|
||||
from django.utils import timezone
|
||||
from music.models import Album, Artist, Track
|
||||
from podcasts.models import PodcastEpisode
|
||||
from scrobbles.models import Scrobble
|
||||
from tasks.models import Task
|
||||
@ -704,3 +704,32 @@ def test_scrobble_jellyfin_track_create_new(
|
||||
scrobble = Scrobble.objects.get(id=1)
|
||||
assert scrobble.media_obj.__class__ == Track
|
||||
assert scrobble.media_obj.title == "Emotion"
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_get_not_allowed_from_gps(client, valid_auth_token):
|
||||
url = reverse("scrobbles:gps-webhook")
|
||||
headers = {"Authorization": f"Token {valid_auth_token}"}
|
||||
response = client.get(url, headers=headers)
|
||||
assert response.status_code == 405
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_gps_webhook_creates_location(client, valid_auth_token):
|
||||
url = reverse("scrobbles:gps-webhook")
|
||||
headers = {"Authorization": f"Token {valid_auth_token}"}
|
||||
gps_data = {
|
||||
"lat": "40.7128",
|
||||
"lon": "-74.0060",
|
||||
"alt": "10.5",
|
||||
"time": "2024-01-14T12:00:00Z",
|
||||
"prov": "gps",
|
||||
}
|
||||
response = client.post(
|
||||
url,
|
||||
gps_data,
|
||||
content_type="application/json",
|
||||
headers=headers,
|
||||
)
|
||||
assert response.status_code == 200
|
||||
assert "scrobble_id" in response.data
|
||||
|
||||
Reference in New Issue
Block a user