Example #1
0
    def __init__(self):
        self.session = session()

        # Generate actor details
        self.firstname = generate_random_words()
        self.lastname = generate_random_words()
        self.username = generate_random_name()
        self.password = generate_random_string(5, 15)
Example #2
0
 def test_edit_non_existant_thread_message(self):
     # Assert unable to edit non existant thread message
     with self.assertRaises(http_exceptions.NotFound):
         ThreadActions(actor=self.actor1).edit_thread_message(
             thread_id=self.thread_model.id,
             message_id=generate_random_string(5, 10),
             message=generate_random_words(5, 15))
Example #3
0
 def test_edit_thread_message_as_thread_member(self):
     # Assert unable to edit message even as thread member, but not message owner
     with self.assertRaises(http_exceptions.Forbidden):
         ThreadActions(actor=self.actor2).edit_thread_message(
             thread_id=self.thread_model.id,
             message_id=self.thread_message_model.id,
             message=generate_random_words(5, 15))
    def send_message_in_thread(self, thread_id, message=None):
        # Randomize message
        message = generate_random_words(1, 10) if message is None else message

        # Send request
        response = ThreadsIdMessagesHandler(actor=self.actor).post(thread_id=thread_id, message=message)

        # Parse model
        model = ThreadMessageModel(external_model=response.json())

        return model
Example #5
0
    def test_edit_thread_message_as_not_thread_member(self):
        # Create additional actor and sign up
        actor3 = Actor()
        UserActions(actor=actor3).signup()

        # Assert unable to edit thread message as not thread member
        with self.assertRaises(http_exceptions.Forbidden):
            ThreadActions(actor=actor3).edit_thread_message(
                thread_id=self.thread_model.id,
                message_id=self.thread_message_model.id,
                message=generate_random_words(5, 15))
    def test_send_message_in_thread_as_thread_member(self):
        # actor2 sends message in thread
        message = generate_random_words(5, 10)
        thread_message_model = ThreadActions(
            actor=self.actor2).send_message_in_thread(
                thread_id=self.thread_model.id, message=message)

        # Assert correct model has been received
        self.assertThreadMessageModel(thread_message_model)
        self.assertEqual(thread_message_model.user, self.user_model2.id)
        self.assertEqual(thread_message_model.thread, self.thread_model.id)
        self.assertEqual(thread_message_model.message, message)
        self.assertFalse(thread_message_model.deleted)
Example #7
0
    def test_edit_thread_message_as_message_owner(self):
        # actor1 edits thread message
        message = generate_random_words(5, 15)
        thread_message_model = ThreadActions(
            actor=self.actor1).edit_thread_message(
                thread_id=self.thread_model.id,
                message_id=self.thread_message_model.id,
                message=message)

        # Assert correct model has been returned
        self.assertThreadMessageModel(thread_message_model)
        self.assertModelsAreEqual(model1=thread_message_model,
                                  model2=self.thread_message_model,
                                  ignore_attributes=["message", "updated_at"])
        self.assertEqual(thread_message_model.message, message)