Skip to content

Commit

Permalink
Added tests for NumberOfInvestingMembersAtDateView
Browse files Browse the repository at this point in the history
  • Loading branch information
Theophile-Madet committed Dec 11, 2024
1 parent 9c2976c commit 896ba37
Showing 1 changed file with 45 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import datetime

from django.utils import timezone

from tapir.coop.models import ShareOwnership
from tapir.coop.tests.factories import ShareOwnerFactory
from tapir.statistics.views.fancy_graph.number_of_investing_members_view import (
NumberOfInvestingMembersAtDateView,
)
from tapir.utils.tests_utils import (
TapirFactoryTestBase,
mock_timezone_now,
)


class TestNumberOfInvestingMembersView(TapirFactoryTestBase):
NOW = datetime.datetime(year=2023, month=4, day=1, hour=12)
REFERENCE_TIME = timezone.make_aware(
datetime.datetime(year=2022, month=6, day=15, hour=12)
)

def setUp(self) -> None:
super().setUp()
self.NOW = mock_timezone_now(self, self.NOW)

def test_calculateDatapoint_memberIsNotInvesting_notCounted(self):
ShareOwnerFactory.create(is_investing=False)

result = NumberOfInvestingMembersAtDateView().calculate_datapoint(
self.REFERENCE_TIME
)

self.assertEqual(0, result)

def test_calculateDatapoint_memberIsInvesting_counted(self):
ShareOwnerFactory.create(is_investing=True)
ShareOwnership.objects.update(
start_date=self.REFERENCE_TIME.date() - datetime.timedelta(days=1)
)

result = NumberOfInvestingMembersAtDateView().calculate_datapoint(
self.REFERENCE_TIME
)

self.assertEqual(1, result)

0 comments on commit 896ba37

Please sign in to comment.