Example #1
0
    def test_update_faq_succeeds(self):
        new_role = RoleFactory.create(name='admin')

        new_user_role = UserRoleFactory.create(user_id=self.user_id(),
                                               role=new_role)

        faq = FaqFactory()
        update_faq_info = FaqFactory.build()

        faq_data = dict(question=update_faq_info.question,
                        answer=update_faq_info.answer)

        response = self.client().patch(
            self.make_url(f"/faqs/{faq.id}"),
            headers=self.headers(),
            data=self.encode_to_json_string(faq_data))

        response_json = self.decode_from_json_string(
            response.data.decode('utf-8'))

        self.assertEqual(response.status_code, 201)
        self.assertEqual(response_json['msg'], 'OK')
        self.assertEqual(response_json['payload']['faq']['question'],
                         update_faq_info.question)
        self.assertEqual(response_json['payload']['faq']['answer'],
                         update_faq_info.answer)

        self.assertEqual(response_json['payload']['faq']['question'],
                         faq.question)
        self.assertEqual(response_json['payload']['faq']['answer'], faq.answer)
    def test_new_faq_method_returns_new_faq_object(self):
        faq = FaqFactory.build()

        new_faq = self.repo.new_faq(faq.category, faq.question, faq.answer)

        self.assertIsInstance(new_faq, Faq)
        self.assertEqual(new_faq.category, faq.category)
        self.assertEqual(new_faq.question, faq.question)
        self.assertEqual(new_faq.answer, faq.answer)
    def test_update_faq_method_handle_not_found(self,
                                                mock_request_params_dict):
        with self.app.app_context():
            faq = FaqFactory()
            update_faq_info = FaqFactory.build()

            mock_request_params_dict.return_value = {
                'question': update_faq_info.question
            }

            faq_controller = FaqController(self.request_context)

            response = faq_controller.update_faq(1000)

            self.assertEqual(response.status_code, 404)
            self.assertEqual(response.get_json()['msg'], 'FAQ Not Found')
    def test_update_faq_method_succeeds(self, mock_request_params_dict):
        with self.app.app_context():
            faq = FaqFactory()
            update_faq_info = FaqFactory.build()

            mock_request_params_dict.return_value = {
                'question': update_faq_info.question
            }

            faq_controller = FaqController(self.request_context)

            response = faq_controller.update_faq(faq.id)

            self.assertEqual(response.status_code, 201)
            self.assertEqual(response.get_json()['msg'], 'OK')
            self.assertEqual(response.get_json()['payload']['faq']['question'],
                             update_faq_info.question)
    def test_create_faq_method_succeeds(self, mock_request_params):
        with self.app.app_context():
            faq = FaqFactory.build()

            mock_request_params.return_value = [
                faq.category, faq.question, faq.answer
            ]

            faq_controller = FaqController(self.request_context)

            response = faq_controller.create_faq()

            self.assertEqual(response.status_code, 201)
            self.assertEqual(response.get_json()['msg'], 'OK')
            self.assertEqual(response.get_json()['payload']['faq']['question'],
                             faq.question)
            self.assertEqual(response.get_json()['payload']['faq']['answer'],
                             faq.answer)