예제 #1
0
    def test_usermanager_fails_on_existing_user(self):
        sut = UserManager([SignupNewUserAccepted(datetime.now(), 42, "Anders")])
        new_user_command = SignupNewUser(datetime.now(), 42, "Anders", "pass")
        result = sut.handle_command(new_user_command)

        self.assertEqual(False, result.success)
        self.assertEqual(1, len(result.events))
        self.assertTrue(isinstance(result.events[0], SignupNewUserRejected))
예제 #2
0
    def __call__(self, command):
        user_manager_eventstream = self.event_store.get_event_stream("usermanager-stream")
        user_manager = UserManager(user_manager_eventstream)
        command_result = user_manager.handle_command(command)
        if command_result.success:
            self.event_store.save_events("usermanager-stream", command_result.events)

        self.event_dispatcher(command_result.events)
예제 #3
0
    def test_usermanager_accepts_new_user(self):
        sut = UserManager([])
        new_user_command = SignupNewUser(datetime.now(), 42, "anders", "pass")
        result = sut.handle_command(new_user_command)

        self.assertEqual(True, result.success)
        self.assertEqual(1, len(result.events))
        self.assertTrue(isinstance(result.events[0], SignupNewUserAccepted))