Example #1
0
 def setUp(self) -> None:
     self.user = User('*****@*****.**', 'password')
     self.event_scheduler = EventScheduler(self.user)
     self.event = self.event_scheduler.create_event("Event One",
                                                    '2020-01-12 20:30:00',
                                                    '2020-01-12 22:30:00',
                                                    False)
Example #2
0
class EventSchedulerTest(unittest.TestCase):
    def setUp(self) -> None:
        self.user = User('*****@*****.**', 'password')
        self.event_scheduler = EventScheduler(self.user)
        self.event = self.event_scheduler.create_event("Event One",
                                                       '2020-01-12 20:30:00',
                                                       '2020-01-12 22:30:00',
                                                       False)

    def test_create_event(self):
        assert self.user in self.event.registered_users

    @staticmethod
    def _create_dummy_user():
        dummy_user = User('dummy', 'dummy')
        dummy_event_scheduler = EventScheduler(dummy_user)

        return dummy_event_scheduler

    def test_limit_attendees(self):
        self.assertRaises(Exception, self.event_scheduler.limit_attendees,
                          self.event, 0)

        self.event_scheduler.limit_attendees(self.event, 1)
        dummy_event_scheduler = self._create_dummy_user()

        self.assertRaises(EventFull, dummy_event_scheduler.register_event,
                          self.event)

    def test_delete_event(self):
        self.event_scheduler.delete_event(self.event)

        self.assertEqual(len(self.user.registered_events), 0)

    def test_register_event(self):
        # self.event_scheduler.register_event(self.event)
        dummy_event_scheduler = self._create_dummy_user()
        dummy_event_scheduler.register_event(self.event)

        self.assertEqual(len(self.event.registered_users), 2)
        self.assertEqual(len(self.user.registered_events), 1)
        self.assertEqual(len(dummy_event_scheduler.user.registered_events), 1)

    def test_register_event_overlapping(self):
        self.assertRaises(OverlappingEvents,
                          self.event_scheduler.register_event, self.event)

    def test_unregister_event(self):
        self.event_scheduler.unregister_event(self.event)

        self.assertEqual(len(self.event.registered_users), 0)
        self.assertEqual(len(self.user.registered_events), 0)

    def test_invite_user_for_event(self):
        dummy_user = self._create_dummy_user().user
        self.event_scheduler.invite_user_for_event(self.event, dummy_user)

        self.assertEqual(len(self.event.invited_users), 2)
Example #3
0
    def setUp(self) -> None:
        self.user = User('*****@*****.**', 'password')
        self.event_scheduler = EventScheduler(self.user)
        self.event1 = self.event_scheduler.create_event("Event One",
                                                        '2020-01-12 20:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=True)
        self.event2 = self.event_scheduler.create_event("Event two",
                                                        '2020-01-12 22:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=False)

        self.event3 = self.event_scheduler.create_event("Event three",
                                                        '2020-01-12 20:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=True)

        self.list_view = EventsView([self.event1, self.event2, self.event3])
Example #4
0
class DBMapperTester(unittest.TestCase):
    def setUp(self) -> None:
        self.user = User('*****@*****.**', 'password')
        self.event_scheduler = EventScheduler(self.user)
        self.event = self.event_scheduler.create_event("Event One",
                                                       '2020-01-12 20:30:00',
                                                       '2020-01-12 22:30:00',
                                                       False)

    def test_to_object_from_dict(self):
        event_db_mapper = EventDBMapper(self.event)
        logger.debug(event_db_mapper.to_db_object())
Example #5
0
class EventsViewTest(unittest.TestCase):
    def setUp(self) -> None:
        self.user = User('*****@*****.**', 'password')
        self.event_scheduler = EventScheduler(self.user)
        self.event1 = self.event_scheduler.create_event("Event One",
                                                        '2020-01-12 20:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=True)
        self.event2 = self.event_scheduler.create_event("Event two",
                                                        '2020-01-12 22:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=False)

        self.event3 = self.event_scheduler.create_event("Event three",
                                                        '2020-01-12 20:30:00',
                                                        '2020-01-12 22:30:00',
                                                        is_private=True)

        self.list_view = EventsView([self.event1, self.event2, self.event3])

    @staticmethod
    def _create_dummy_user():
        dummy_user = User('dummy', 'dummy')
        dummy_event_scheduler = EventScheduler(dummy_user)

        return dummy_event_scheduler

    def test_view_public_events(self):
        self.assertEqual(len(list(self.list_view.public_events())), 1)

    def test_private_events(self):
        dummy_user = self._create_dummy_user().user
        self.event_scheduler.invite_user_for_event(self.event1, dummy_user)

        self.assertEqual(len(list(self.list_view.private_events(dummy_user))),
                         1)
Example #6
0
class RepoTester(unittest.TestCase):
    def setUp(self) -> None:
        self.user = User('*****@*****.**', 'password')
        self.event_scheduler = EventScheduler(self.user)
        self.user_repo = UserRepository()
        self.event_repo = EventRepository()
        self.event = self.event_scheduler.create_event("Event One",
                                                       '2020-01-12 20:30:00',
                                                       '2020-01-12 22:30:00',
                                                       False)

    def test_add_user(self):
        self.user_repo.add_user(user=self.user)

    def test_get_user(self):
        self.user_repo.add_user(user=self.user)
        self.event_repo.add_event(self.event)

        self.assertTrue(
            self.user_repo.get_user('*****@*****.**') == self.user)

    def _create_dummy_user(self):
        dummy_user = User('*****@*****.**', 'password')

        return dummy_user

    def test_get_all_users(self):
        dummy_user = self._create_dummy_user()
        self.user_repo.add_user(dummy_user)
        self.event_repo.add_event(self.event)
        self.user_repo.add_user(self.user)

        for user in self.user_repo.get_all_users():
            logger.debug(user)
        # logger.debug(self.user_repo.get_all_users())

    def tearDown(self) -> None:
        self.user_repo.delete_repo()
        self.user_repo.close()
Example #7
0
import pprint
from datetime import datetime

from src.db_mapper import EventDBMapper, UserDBMapper
from src.model import User, Event
from src.actions import EventScheduler
from tinydb import TinyDB, Query
from src.repository import UserRepository, EventRepository
import logging

logger = logging.getLogger(__name__)

user_repo = UserRepository()
event_repo = EventRepository()
user = User('*****@*****.**', 'ca$hc0w')
event_scheduler = EventScheduler(user)
event = event_scheduler.create_event("Event One", '2020-01-12 20:30:00',
                                     '2020-01-12 22:30:00', False)

# logger.debug(pprint.pformat(user.to_db_object()))
Example #8
0
    def _create_dummy_user():
        dummy_user = User('dummy', 'dummy')
        dummy_event_scheduler = EventScheduler(dummy_user)

        return dummy_event_scheduler