Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions tests/test_project/test_project/multidbtest/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,26 +17,26 @@ class WeatherPinnedViewConnectionTest(TestCase):
"""Weather views should only return weather_db when pinned."""

def test_weather_view_using_weather_db(self):
assert MonthlyObservation.get_view_connection(using="weather_db") == connections["weather_db"]
self.assertEqual(MonthlyObservation.get_view_connection(using="weather_db"), connections["weather_db"])

def test_weather_view_using_default_db(self):
assert MonthlyObservation.get_view_connection(using=DEFAULT_DB_ALIAS) is None
self.assertIsNone(MonthlyObservation.get_view_connection(using=DEFAULT_DB_ALIAS))

def test_other_app_view_using_weather_db(self):
assert RelatedView.get_view_connection(using="weather_db") is None
self.assertIsNone(RelatedView.get_view_connection(using="weather_db"))

def test_other_app_view_using_default_db(self):
assert RelatedView.get_view_connection(using=DEFAULT_DB_ALIAS) == connections["default"]
self.assertEqual(RelatedView.get_view_connection(using=DEFAULT_DB_ALIAS), connections["default"])


class DefaultRouterViewConnectionTest(TestCase):
"""All views should should use default alias by default."""

def test_weather_view_default(self):
assert MonthlyObservation.get_view_connection(using=DEFAULT_DB_ALIAS) == connections["default"]
self.assertEqual(MonthlyObservation.get_view_connection(using=DEFAULT_DB_ALIAS), connections["default"])

def test_other_app_view_default(self):
assert RelatedView.get_view_connection(using=DEFAULT_DB_ALIAS) == connections["default"]
self.assertEqual(RelatedView.get_view_connection(using=DEFAULT_DB_ALIAS), connections["default"])


@override_settings(DATABASE_ROUTERS=[WeatherPinnedRouter()])
Expand All @@ -48,13 +48,13 @@ class WeatherPinnedRefreshViewTest(TestCase):
def test_pre_refresh(self):
Observation.objects.create(date=dt.date(2022, 1, 1), temperature=10)
Observation.objects.create(date=dt.date(2022, 1, 3), temperature=20)
assert MonthlyObservation.objects.count() == 0
self.assertEqual(MonthlyObservation.objects.count(), 0)

def test_refresh(self):
Observation.objects.create(date=dt.date(2022, 1, 1), temperature=10)
Observation.objects.create(date=dt.date(2022, 1, 3), temperature=20)
MonthlyObservation.refresh()
assert MonthlyObservation.objects.count() == 1
self.assertEqual(MonthlyObservation.objects.count(), 1)


@override_settings(DATABASE_ROUTERS=[WeatherPinnedRouter()])
Expand All @@ -71,8 +71,8 @@ def on_view_synced(sender, **kwargs):
synced_views.append(sender)

call_command("migrate", database=DEFAULT_DB_ALIAS)
assert MonthlyObservation not in synced_views
assert RelatedView in synced_views
self.assertNotIn(MonthlyObservation, synced_views)
self.assertIn(RelatedView, synced_views)

def test_weather_db(self):
synced_views = []
Expand All @@ -82,8 +82,8 @@ def on_view_synced(sender, **kwargs):
synced_views.append(sender)

call_command("migrate", database="weather_db")
assert MonthlyObservation in synced_views
assert RelatedView not in synced_views
self.assertIn(MonthlyObservation, synced_views)
self.assertNotIn(RelatedView, synced_views)


@override_settings(DATABASE_ROUTERS=[WeatherPinnedRouter()])
Expand All @@ -100,8 +100,8 @@ def on_view_synced(sender, **kwargs):
synced_views.append(sender)

call_command("sync_pgviews", database=DEFAULT_DB_ALIAS)
assert MonthlyObservation not in synced_views
assert RelatedView in synced_views
self.assertNotIn(MonthlyObservation, synced_views)
self.assertIn(RelatedView, synced_views)

def test_weather_db(self):
synced_views = []
Expand All @@ -111,8 +111,8 @@ def on_view_synced(sender, **kwargs):
synced_views.append(sender)

call_command("sync_pgviews", database="weather_db")
assert MonthlyObservation in synced_views
assert RelatedView not in synced_views
self.assertIn(MonthlyObservation, synced_views)
self.assertNotIn(RelatedView, synced_views)


@override_settings(DATABASE_ROUTERS=[WeatherPinnedRouter()])
Expand All @@ -124,9 +124,9 @@ class WeatherPinnedRefreshPGViewsTest(TestCase):
def test_default(self):
Observation.objects.create(date=dt.date(2022, 1, 1), temperature=10)
call_command("refresh_pgviews", database=DEFAULT_DB_ALIAS)
assert MonthlyObservation.objects.count() == 0
self.assertEqual(MonthlyObservation.objects.count(), 0)

def test_weather_db(self):
Observation.objects.create(date=dt.date(2022, 1, 1), temperature=10)
call_command("refresh_pgviews", database="weather_db")
assert MonthlyObservation.objects.count() == 1
self.assertEqual(MonthlyObservation.objects.count(), 1)
Loading