Skip to content
Snippets Groups Projects
Commit 173d5a55 authored by jan.bednarik's avatar jan.bednarik
Browse files

Settup for tests with test only models

parent 061d61f5
No related branches found
No related tags found
2 merge requests!706Release,!705Upgrade
from .dev import *
INSTALLED_APPS += ["tests"]
[pytest]
addopts = --ds=majak.settings.dev -p no:warnings --nomigrations
addopts = --ds=majak.settings.test -p no:warnings --nomigrations
python_files = test_*.py
......@@ -3,11 +3,8 @@ from datetime import datetime
from pathlib import Path
import pytest
from django.db import connection
from icalevnt.icalparser import Event
from calendar_utils.models import CalendarMixin
@pytest.fixture(scope="session")
def sample_response():
......@@ -60,19 +57,3 @@ def sample_future_events():
event_dict["start"] = datetime.fromisoformat(event_dict["start"])
event_dict["end"] = datetime.fromisoformat(event_dict["end"])
return event_dict_list
class DummyModel(CalendarMixin):
class Meta:
app_label = "__tests"
@pytest.fixture(scope="session")
def Dummy(django_db_setup, django_db_blocker):
with django_db_blocker.unblock():
with connection.schema_editor() as editor:
editor.create_model(DummyModel)
yield DummyModel
with django_db_blocker.unblock():
with connection.schema_editor() as editor:
editor.delete_model(DummyModel)
......@@ -4,6 +4,7 @@ import pytz
from faker import Faker
from calendar_utils.models import Calendar
from tests.models import DummyCalendarModel
pytestmark = pytest.mark.django_db
......@@ -86,16 +87,16 @@ def test_calendar__save_and_load_events__no_values():
assert cal.future_events is None
def test_calendar_mixin__no_calendar_url(Dummy):
obj = Dummy.objects.create()
def test_calendar_mixin__no_calendar_url():
obj = DummyCalendarModel.objects.create()
assert obj.calendar is None
def test_calendar_mixin__set_calendar_url(Dummy, mocker):
def test_calendar_mixin__set_calendar_url(mocker):
m_update = mocker.patch.object(Calendar, "update_source")
url = fake.url()
obj = Dummy.objects.create(calendar_url=url)
obj = DummyCalendarModel.objects.create(calendar_url=url)
obj.refresh_from_db()
assert obj.calendar_url == url
......@@ -103,9 +104,9 @@ def test_calendar_mixin__set_calendar_url(Dummy, mocker):
assert m_update.call_count == 1
def test_calendar_mixin__update_calendar_url(Dummy, mocker):
def test_calendar_mixin__update_calendar_url(mocker):
m_update = mocker.patch.object(Calendar, "update_source")
obj = Dummy.objects.create(calendar_url=fake.url())
obj = DummyCalendarModel.objects.create(calendar_url=fake.url())
url = fake.url()
m_update.reset_mock()
......@@ -118,10 +119,10 @@ def test_calendar_mixin__update_calendar_url(Dummy, mocker):
assert m_update.call_count == 1
def test_calendar_mixin__unchanged_calendar_url(Dummy, mocker):
def test_calendar_mixin__unchanged_calendar_url(mocker):
m_update = mocker.patch.object(Calendar, "update_source")
url = fake.url()
obj = Dummy.objects.create(calendar_url=url)
obj = DummyCalendarModel.objects.create(calendar_url=url)
m_update.reset_mock()
obj.save()
......@@ -132,9 +133,9 @@ def test_calendar_mixin__unchanged_calendar_url(Dummy, mocker):
assert m_update.call_count == 1
def test_calendar_mixin__clear_calendar_url(Dummy, mocker):
def test_calendar_mixin__clear_calendar_url(mocker):
m_update = mocker.patch.object(Calendar, "update_source")
obj = Dummy.objects.create(calendar_url=fake.url())
obj = DummyCalendarModel.objects.create(calendar_url=fake.url())
m_update.reset_mock()
obj.calendar_url = None
......
from calendar_utils.models import CalendarMixin
class DummyCalendarModel(CalendarMixin):
pass
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment