예제 #1
0
 def setUp(self):
     self.app = app.app.test_client()
     app.app.config['TESTING'] = True
     app.db.session.close()
     app.db.drop_all()
     app.db.create_all()
     app.add_user('admin', 'password', 1)
     app.add_user('investor', 'password', 0)
예제 #2
0
 def test_create_user(self):
     """
     Test to ensure we can add a user to the database
     """
     new_user = {
         "_id": ObjectId("000000000000000000000002"),
         "name": "Polly O'Donovan",
         "username": "******",
         "my_recipes": [],
         "favourite_recipes": []
     }
     app.add_user(new_user)
     self.assertIn(new_user, list(app.get_users()))
     app.delete_user('000000000000000000000002')
 def test_failure_params_not_int(self):
     '''
     Failure params are being looped over to make sure they are not returning expected values
     '''
     for test in self.success_test_params:
         actual_result = file.add_user(test[KEY_INPUT])
         expected_result = test[KEY_EXPECTED]
         self.assertDictEqual(actual_result, expected_result)
         self.assertDictContainsSubset(actual_result, expected_result)
 def test_failure_params(self):
     '''
     Failure params are being looped over to make sure they are not returning expected values
     '''
     for test in self.failure_test_params:
         actual_result = file.add_user(test[KEY_INPUT])
         expected_result = test[KEY_EXPECTED]
         self.assertNotEqual(actual_result, expected_result)
         self.assertNotEqual(actual_result['0'], expected_result['0'])
         self.assertNotEqual(actual_result['1'], expected_result['1'])
 def test_succesful_params(self):
     '''
     Successfull params are being looped over to make sure they are returning expected values
     '''
     for test in self.success_test_params:
         actual_result = file.add_user(test[KEY_INPUT])
         expected_result = test[KEY_EXPECTED]
         self.assertEqual(actual_result, expected_result)
         self.assertEqual(actual_result['0'], expected_result['0'])
         self.assertEqual(actual_result['1'], expected_result['1'])
예제 #6
0
    def test_in(self):
        for test in self.in_test_params:
            with patch('app.db.session.add', self.mocked_db_session_add):
                with patch('app.db.session.commit',
                           self.mocked_db_session_commit):
                    with patch('models.User.query') as mocked_query:
                        mocked_query.all = self.mocked_person_query_all
                        actual_result = add_user(test[KEY_INPUT])
                        expected_result = test[KEY_EXPECTED]

                        self.assertIn(actual_result[1], expected_result[1])
                        self.assertNotIn(actual_result[1], expected_result[0])
예제 #7
0
    def test_failure(self):
        '''Testing to make sure these cases never occur when adding to database'''
        for test in self.failure_test_params:
            with patch('app.db.session.add', self.mocked_db_session_add):
                with patch('app.db.session.commit',
                           self.mocked_db_session_commit):
                    with patch('models.Person.query') as mocked_query:
                        mocked_query.all = self.mocked_person_query_all

                        actual_result = add_user(test[KEY_INPUT])
                        expected_result = test[KEY_EXPECTED]

                        self.assertNotEqual(len(actual_result),
                                            len(expected_result))
                        self.assertNotEqual(actual_result, expected_result)
예제 #8
0
    def test_success(self):
        '''Test if adding people to the database is successful'''
        for test in self.success_test_params:
            with patch('app.db.session.add', self.mocked_db_session_add):
                with patch('app.db.session.commit',
                           self.mocked_db_session_commit):
                    with patch('models.Person.query') as mocked_query:
                        mocked_query.all = self.mocked_person_query_all

                        actual_result = add_user(test[KEY_INPUT])
                        expected_result = test[KEY_EXPECTED]

                        self.assertEqual(len(actual_result),
                                         len(expected_result))
                        self.assertEqual(actual_result[1], expected_result[1])
    def test_add_user(self):
        for test in self.success_test_params:

            with patch('models.Person.query') as mocked_query:
                mocked_query.all = self.mocked_person
                with patch('app.DB.session.add', self.mocked_add):
                    with patch('app.DB.session.commit', self.mocked_commit):
                        with patch('app.SOCKETIO.emit', self.mocked_emit):

                            actual_result = add_user(test[INPUT])

                            expected_result = test[EXPECTED_OUTPUT]

                            self.assertEqual(len(actual_result),
                                             len(expected_result))
                            self.assertEqual(actual_result, expected_result)
예제 #10
0
 def test_user_success(self):
     for test in self.success_test_params:
         with patch('app.db.session.add', self.mocked_db_session_add):
             with patch('app.db.session.commit',
                        self.mocked_db_session_commit):
                 with patch('models.Leaderboard.query') as mocked_query:
                     mocked_query.all = self.mocked_person_query_all
                     print(self.initial_db_mock)
                     actual_result = add_user(test[KEY_INPUT])
                     print(actual_result)
                     expected_result = test[KEY_EXPECTED]
                     print(self.initial_db_mock)
                     print(expected_result)
                     self.assertEqual(len(actual_result),
                                      len(expected_result))
                     self.assertEqual(actual_result[1], expected_result[1])