python-voting/test/test_quorum.py

28 lines
925 B
Python
Raw Normal View History

2023-04-03 03:07:00 +00:00
import unittest
from voting import QuorumKind, Quorum
voters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
class TestQuorumSanity(unittest.TestCase):
def test_invalid_absolute_values(self):
self.assertRaises(ValueError, Quorum, kind=QuorumKind.ABSOLUTE, value=0)
self.assertRaises(ValueError, Quorum, kind=QuorumKind.ABSOLUTE, value=-1)
def test_valid_absolute_values(self):
Quorum(kind=QuorumKind.ABSOLUTE, value=1)
def test_invalid_percent_values(self):
self.assertRaises(ValueError, Quorum, kind=QuorumKind.PERCENT, value=0)
self.assertRaises(ValueError, Quorum, kind=QuorumKind.PERCENT, value=-1)
self.assertRaises(ValueError, Quorum, kind=QuorumKind.PERCENT, value=100.1)
def test_valid_percent_values(self):
Quorum(kind=QuorumKind.PERCENT, value=0.1)
Quorum(kind=QuorumKind.PERCENT, value=100)
if __name__ == '__main__':
unittest.main()