diff --git a/tests/test_progit_flask_ui_repo.py b/tests/test_progit_flask_ui_repo.py index ba4b2cf..b6db3c6 100644 --- a/tests/test_progit_flask_ui_repo.py +++ b/tests/test_progit_flask_ui_repo.py @@ -146,6 +146,46 @@ class ProgitFlaskRepotests(tests.Modeltests): self.assertTrue( '
  • User removed
  • ' in output.data) + def test_update_description(self): + """ Test the update_description endpoint. """ + output = self.app.post('/foo/updatedesc') + self.assertEqual(output.status_code, 302) + + user = tests.FakeUser() + with tests.user_set(progit.APP, user): + output = self.app.post('/foo/updatedesc') + self.assertEqual(output.status_code, 404) + + tests.create_projects(self.session) + + output = self.app.post('/test/updatedesc') + self.assertEqual(output.status_code, 403) + + user.username = 'pingou' + with tests.user_set(progit.APP, user): + output = self.app.post('/test/updatedesc', follow_redirects=True) + self.assertEqual(output.status_code, 200) + self.assertTrue('
    ' in output.data) + self.assertTrue('

    Settings

    ' in output.data) + self.assertTrue( + '' in output.data) + + csrf_token = output.data.split( + 'name="csrf_token" type="hidden" value="')[1].split('">')[0] + + data = { + 'description': 'new description for test project #1', + 'csrf_token': csrf_token, + } + output = self.app.post( + '/test/updatedesc', data=data, follow_redirects=True) + self.assertEqual(output.status_code, 200) + self.assertTrue('
    ' in output.data) + self.assertTrue('

    Settings

    ' in output.data) + self.assertTrue( + '
  • Description updated
  • ' + in output.data) + if __name__ == '__main__': SUITE = unittest.TestLoader().loadTestsFromTestCase(ProgitFlaskRepotests)