summaryrefslogtreecommitdiff
path: root/AlgoDesignAndTechniqueEdxPython/tests/fibagainTest.py
blob: 2702bdb2f8ef5d427d8129fb068edc28c4e99a06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
'''
Created on Aug 23, 2018

@author: haidong
'''
import unittest

from sources.fibagain import getPisanoPeriod, getFibNModM

class Test(unittest.TestCase):


    def testPisanoPeriod73(self):
        self.assertEqual(getPisanoPeriod(73), 148)
 
    def testPisanoPeriod2(self):
        self.assertEqual(getPisanoPeriod(2), 3)
 
    def testPisanoPeriod98(self):
        self.assertEqual(getPisanoPeriod(98), 336)
     
    def testFibNModM2015_3(self):
        self.assertEqual(getFibNModM(2015, 3), 1)
 
    def testFibNModM239_1000(self):
        self.assertEqual(getFibNModM(239, 1000), 161)
 
    def testFibNModM2816213588_30524(self):
        self.assertEqual(getFibNModM(2816213588, 30524), 10249)

    def testFibNModM99999999999999999_2(self):
        self.assertEqual(getFibNModM(99999999999999999, 2), 0)

if __name__ == "__main__":
    #import sys;sys.argv = ['', 'Test.testName']
    unittest.main()