X-Git-Url: https://code.wpia.club/?p=motion.git;a=blobdiff_plain;f=tests%2Ftest_motion.py;h=b1ec4335b59fdb04154bb4bccccea2174ae40d76;hp=7ef5ceac11c309943e8fdb0e910d999c8e051bef;hb=7f7b44cb967ae9b99ddcbf3879c92d448570d49c;hpb=e48d9939220828479799f89e24d52ca684e0001c diff --git a/tests/test_motion.py b/tests/test_motion.py index 7ef5cea..b1ec433 100644 --- a/tests/test_motion.py +++ b/tests/test_motion.py @@ -515,360 +515,6 @@ class AuditMotionTests(BasicTest): + '\n
User C: no
\n \n\nBack' self.assertIn(str.encode(testtext), result.data) -class ProxyManagementTests(BasicTest): - - def setUp(self): - self.init_test() - global user - user='testuser/proxyadmin:*' - global userid - userid=4 - self.db_sampledata() - - def tearDown(self): - pass - - def test_see_proxy(self): - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= 'div class="container">\n
' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= '\n' - self.assertIn(str.encode(testtext), result.data) - testtext= '\n' - self.assertIn(str.encode(testtext), result.data) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n '\ - + '
VoterProxy
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'Proxy management' - self.assertIn(str.encode(testtext), result.data) - - def test_add_proxy(self): - voter='' - proxy='' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, voter equals proxy.'), response.data) - - voter='User A' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy not found.'), response.data) - - voter='User Z' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, voter not found.'), response.data) - - voter='' - proxy='User B' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, voter not found.'), response.data) - - voter='User B' - proxy='User B' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, voter equals proxy.'), response.data) - - voter='User A' - proxy='User Z' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy not found.'), response.data) - - voter='User A' - proxy='User B' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '' - self.assertIn(str.encode(testtext), result.data) - testtext= '\n '\ - + '\n '\ - + '\n '\ - + '\n \n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
User AUser B
\n' - self.assertIn(str.encode(testtext), result.data) - - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy allready given.'), response.data) - - voter='User A' - proxy='User C' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy allready given.'), response.data) - - voter='User C' - proxy='User B' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n '\ - + '\n \n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
User AUser B
User CUser B
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - - voter='testuser' - proxy='User B' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, Max proxy for \'User B\' reached.'), response.data) - - voter='testuser' - proxy='User A' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
testuserUser A
User AUser B
User CUser B
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to: User A\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - - voter='User B' - proxy='testuser' - response = self.addProxy(user, voter, proxy) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
testuserUser A
User AUser B
User Btestuser
User CUser B
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to: User A\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'holds proxy of: User B\n' - self.assertIn(str.encode(testtext), result.data) - - response = self.revokeProxy(user, userid) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
testuserUser A
User AUser B
User CUser B
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to: User A\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - - response = self.revokeProxy(user, 3) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n '\ - + '\n \n \n '\ - + '\n \n '\ - + '\n \n \n '\ - + '\n '\ - + '\n
VoterProxy
User AUser B
User CUser B
\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - - result = self.app.post('proxy/revokeall', environ_base={'USER_ROLES': user}, follow_redirects=True) - self.assertEqual(response.status_code, 302) - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '\n '\ - + '\n '\ - + '\n \n \n \n'\ - + '
VoterProxy
\n' - self.assertNotIn(str.encode(testtext), result.data) - - proxytest="proxytest" - with self.open_DB() as db: - db.prepare("INSERT INTO voter(\"email\", \"host\") VALUES($1, $2)")(proxytest, '127.0.0.1:5001') - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - - response = self.addProxy(user, proxytest, 'testuser') - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, voter not found.'), response.data) - - response = self.addProxy(user, 'testuser', proxytest) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy not found.'), response.data) - - def test_see_proxy_host_only(self): - proxytest="proxytest" - with self.open_DB() as db: - db.prepare("INSERT INTO voter(\"email\", \"host\") VALUES($1, $2)")(proxytest, '127.0.0.1:5001') - result = self.app.get('proxy', environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= 'div class="container">\n' - self.assertIn(str.encode(testtext), result.data) - testtext= 'proxy granted to:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= 'holds proxy of:' - self.assertNotIn(str.encode(testtext), result.data) - testtext= '\n' - self.assertIn(str.encode(testtext), result.data) - testtext= '\n' - self.assertIn(str.encode(testtext), result.data) - self.assertNotIn(str.encode(proxytest), result.data) - -class ProxyVoteTests(BasicTest): - - def setUp(self): - self.init_test() - global user - user='testuser/vote:* proxyadmin:*' - self.db_sampledata() - - def tearDown(self): - pass - - def test_proxy_vote(self): - voter='testuser' - proxy='User B' - proxyid=2 - proxyuser='User B/vote:*' - - response = self.addProxy(user, proxy, voter) - self.assertEqual(response.status_code, 302) - - motion='g1.20200402.004' - response = self.createVote(user, motion, 'yes', proxyid) - self.assertEqual(response.status_code, 302) - - # testuser view - result = self.app.get('/motion/' + motion, environ_base={'USER_ROLES': user}, follow_redirects=True) - # own vote without change - testtext= '\n'\ - + '\n'\ - + '\n'\ - + '\n
' - self.assertIn(str.encode(testtext), result.data) - # proxy vote with change - testtext= '
\n'\ - + '\n'\ - + '\n'\ - + '\n
\n' - self.assertIn(str.encode(testtext), result.data) - - # User B view - result = self.app.get('/motion/' + motion, environ_base={'USER_ROLES': proxyuser}, follow_redirects=True) - # own vote without change - testtext= '

My vote

\nGiven by testuser\n'\ - + '
\n'\ - + '\n'\ - + '\n'\ - + '\n
' - self.assertIn(str.encode(testtext), result.data) - - # change vote - response = self.createVote(user, motion, 'no', proxyid) - self.assertEqual(response.status_code, 302) - - result = self.app.get('/motion/' + motion, environ_base={'USER_ROLES': user}, follow_redirects=True) - testtext= '
\n'\ - + '\n'\ - + '\n'\ - + '\n
\n' - self.assertIn(str.encode(testtext), result.data) - - def test_proxy_vote_no_proxy(self): - voter='testuser' - proxy='User B' - # wrong proxy id - proxyid=3 - - response = self.addProxy(user, proxy, voter) - self.assertEqual(response.status_code, 302) - - motion='g1.20200402.004' - response = self.createVote(user, motion, 'yes', proxyid) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy not found'), response.data) - - # non existing id - proxyid=10000 - - motion='g1.20200402.004' - response = self.createVote(user, motion, 'yes', proxyid) - self.assertEqual(response.status_code, 400) - self.assertIn(str.encode('Error, proxy not found'), response.data) - - def test_proxy_vote_no_voter(self): - voter='User A' - proxy='User B' - proxyid=2 - - response = self.addProxy(user, proxy, voter) - self.assertEqual(response.status_code, 302) - - user1='testuser1/' - motion='g1.20200402.004' - response = self.createVote(user1, motion, 'yes', proxyid) - self.assertEqual(response.status_code, 403) - self.assertIn(str.encode('Forbidden'), response.data) - - if __name__ == "__main__": unittest.main()