Exemple #1
0
 def test_idea_delete_should_check_delete_permission(self):
     with self.assertRaises(ForbiddenActionException) as context:
         idea = Idea(discussion_id='54354654',
                     creator_id='78987987',
                     title='Test idea',
                     description='Test description').delete()
     self.assertIsInstance(context.exception, ForbiddenActionException)
Exemple #2
0
 def test_idea_persist_should_pass(self):
     try:
         Idea(discussion_id='54354654',
              creator_id='78987987',
              title='Test idea',
              description='Test description').delete()
     except ForbiddenActionException:
         self.fail("delete() raised ForbiddenActionException unexpectedly")
Exemple #3
0
    def create_card(self, message):
        message_out = self.generate_message('createCard', message['data'])
        self.broadcast_to_room(self, message_out)
        room_id = self.rooms.get_room_id(self)
        self.cards.add(room_id, message['data'])

        # --
        idea = Idea(card_id=message['data']['id'])
        idea.save()
Exemple #4
0
def init_ideas(discussion_id, user_bob_id, user_john_id, user_anna_id):
    return [
        Idea(discussion_id=discussion_id,
             title="The parent idea about saving the environment",
             description="One idea to rule them all",
             creator_id=user_john_id).persist(),
        Idea(discussion_id=discussion_id,
             title='Cars',
             description='We should avoid using cars',
             creator_id=user_bob_id).persist(),
        Idea(discussion_id=discussion_id,
             title='Plane flights should be replace with boat trips',
             description='We should avoid using planes',
             creator_id=user_anna_id).persist(),
        Idea(discussion_id=discussion_id,
             title="We should avoid helicopter flights",
             description="How about not using jet pack either",
             creator_id=user_anna_id).persist()
    ]
Exemple #5
0
 def test_idea_init_should_set_attributes(self):
     idea = Idea(discussion_id='54354654',
                 creator_id='78987987',
                 title='Test idea',
                 description='Test description')
     self.assertEqual(idea.discussion_id, '54354654')
     self.assertEqual(idea.creator_id, '78987987')
     self.assertEqual(idea.title, 'Test idea')
     self.assertEqual(idea.description, 'Test description')
     self.assertTrue(isinstance(idea.creation_date, datetime))
     self.assertEqual(idea.ideas, [])
Exemple #6
0
 def post(self):
     data = request.get_json()
     user_id = get_jwt_identity()
     if not are_idea_params_valid(**data):
         return {
             "error":
             "Input parameters not valid. Scores should be between 1 and 10"
         }, 400
     idea = Idea(user_id=user_id, **data)
     db.session.add(idea)
     db.session.commit()
     return idea.get_idea_json(), 201
Exemple #7
0
    def create_card(self, message):
        user_id = self.get_current_user_id()
        message['data']['user_id'] = user_id
        message_out = self.generate_message('createCard', message['data'])
        self.broadcast(message_out)
        room_id = self.rooms.get_room_id(self)
        self.cards.add(room_id, message['data'])

        idea = Idea(card_id=message['data']['id'])
        idea.save()

        if message['data']['ai_switch']:
            sentence_generator = SentenceGenerator()
            res = yield from sentence_generator.generate_sentence(
                message['data']['text'])
            for sent in res:
                message_out = self.generate_message('advice', {'sent': sent})
                self.send_message(message_out)
                yield from asyncio.sleep(2.5)
Exemple #8
0
    parent_post_id='1'
)
post4.id = '4'

post5 = Post(
    discussion_id='1234',
    text='Test5',
    creator_id='1234',
    parent_post_id='1'
)
post5.id = '4'

idea1 = Idea(
    discussion_id='1234',
    title='Test1',
    description='Test1',
    creator_id='1234',
    parent_idea_id=None
)
idea1.id = '1'

mock_posts = [post1, post2, post3, post4, post5]
mock_ideas = [idea1]


class TestPost(unittest.TestCase):

    def setUp(self):
        print('In method ' + self._testMethodName)

    @mock.patch("security.auth.UserSession.current_user", mock_user_forbidden)
Exemple #9
0
mock_user_forbidden.set_global_permissions(['WRONG_PERMISSION'])

mock_user_allowed_for_persist = User(username='******',
                                     email='*****@*****.**',
                                     password='******')
mock_user_allowed_for_persist.set_global_permissions([PermissionType.ADD_IDEA])

mock_user_allowed_for_delete = User(username='******',
                                    email='*****@*****.**',
                                    password='******')
mock_user_allowed_for_delete.set_global_permissions(
    [PermissionType.REMOVE_IDEA])

idea1 = Idea(discussion_id='1234',
             title='Test1',
             description='Test1',
             creator_id='1234',
             parent_idea_id=None)
idea1.id = '1'

idea2 = Idea(discussion_id='1234',
             title='Test2',
             description='Test2',
             creator_id='1234',
             parent_idea_id='1')
idea2.id = '2'

idea3 = Idea(discussion_id='1234',
             title='Test3',
             description='Test3',
             creator_id='1234',
Exemple #10
0
 def post(self):
     data = request.get_json()
     idea = Idea(**data)
     idea.create()
     return idea.json(), 201