import unittest import os import zipfile import time class TestSmucanje(unittest.TestCase): @classmethod def setUpClass(cls): base, ext = os.path.splitext(os.path.basename(__file__)) zf = zipfile.ZipFile(__file__ + ".zip", "a", zipfile.ZIP_DEFLATED) zf.write(__file__, "{}.{}{}".format(base, int(time.time()), ext)) zf.close() def test_tocke(self): [self.assertEqual(tocke(i + 1), t, "Napaka: %i. mesto prinaša %i točk" % (i + 1, t)) for i, t in enumerate([100, 80, 60, 50, 45, 40, 36, 32, 29, 26, 24, 22, 20, 18, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1])] def test_pristej(self): smuk = {} pristej(smuk, ["Ana", "Berta", "Cilka"]) self.assertEqual(smuk, {"Ana": 100, "Berta": 80, "Cilka": 60}) pristej(smuk, ["Berta", "Cilka", "Dani", "Ema", "Fanči", "Greta"]) self.assertEqual(smuk, {"Ana": 100, "Berta": 180, "Cilka": 140, "Dani": 60, "Ema": 50, "Fanči": 45, "Greta": 40}) pristej(smuk, ["Cilka"]) self.assertEqual(smuk, {"Ana": 100, "Berta": 180, "Cilka": 240, "Dani": 60, "Ema": 50, "Fanči": 45, "Greta": 40}) pristej(smuk, []) self.assertEqual(smuk, {"Ana": 100, "Berta": 180, "Cilka": 240, "Dani": 60, "Ema": 50, "Fanči": 45, "Greta": 40}) pristej(smuk, ["Helga"]) self.assertEqual(smuk, {"Ana": 100, "Berta": 180, "Cilka": 240, "Dani": 60, "Ema": 50, "Fanči": 45, "Greta": 40, "Helga": 100}) def test_prvih_n(self): smuk = {"Cilka": 240, "Berta": 180, "Ana": 100, "Dani": 60, "Ema": 50, "Fanči": 45, "Greta": 40} self.assertEqual(prvih_n(smuk, 3), [(240, "Cilka"), (180, "Berta"), (100, "Ana")]) self.assertEqual(prvih_n(smuk, 2), [(240, "Cilka"), (180, "Berta")]) self.assertEqual(prvih_n(smuk, 1), [(240, "Cilka")]) self.assertEqual(prvih_n(smuk, 6), [ (240, "Cilka"), (180, "Berta"), (100, "Ana"), (60, "Dani"), (50, "Ema"), (45, "Fanči")]) def test_razvrstitev(self): self.assertEqual( razvrstitev([(13, "A"), (8, "B"), (15, "C"), (10, "D"), (12, "E")]), [(1, "B"), (2, "D"), (3, "E"), (4, "A"), (5, "C")]) self.assertEqual( razvrstitev([(13, "A"), (8, "B"), (15, "C"), (10, "D"), (8, "E")]), [(1, "B"), (1, "E"), (3, "D"), (4, "A"), (5, "C")]) self.assertEqual(razvrstitev([(13, "A")]), [(1, "A")]) self.assertEqual( razvrstitev([(13, "A"), (13, "B"), (13, "C"), (15, "D")]), [(1, "A"), (1, "B"), (1, "C"), (4, "D")]) self.assertEqual( razvrstitev([(13, "A"), (13, "B"), (13, "C"), (10, "D")]), [(1, "D"), (2, "A"), (2, "B"), (2, "C")]) self.assertEqual( razvrstitev([(13, "A"), (13, "B"), (13, "C"), (10, "D"), (15, "E")]), [(1, "D"), (2, "A"), (2, "B"), (2, "C"), (5, "E")]) self.assertEqual( razvrstitev([(13, "A"), (13, "B"), (13, "C"), (10, "D"), (10, "E"), (17, "F")]), [(1, "D"), (1, "E"), (3, "A"), (3, "B"), (3, "C"), (6, "F")]) if __name__ == "__main__": unittest.main()