Exemplo n.º 1
0
 def test_perm_gen_lex_empty_string(self):
     """
     Empty string should return [] & None argument raises ValueError
     """
     self.assertEqual(perm_lex.perm_gen_lex(''),[])
     with self.assertRaises(ValueError):
         perm_lex.perm_gen_lex()
Exemplo n.º 2
0
 def test_perm_gen_lex01(self):
     #tests 3 letter string
     self.assertEqual(perm_lex.perm_gen_lex('abc'),
                      ['abc', 'acb', 'bac', 'bca', 'cab', 'cba'])
     #same string but different order ---> same permutations but different order
     self.assertEqual(perm_lex.perm_gen_lex('cba'),
                      ['cba', 'cab', 'bca', 'bac', 'acb', 'abc'])
Exemplo n.º 3
0
 def test_perm_gen_lex_multiple_letters(self):
     '''Tests a list with more than one of the same letter'''
     self.assertEqual(perm_lex.perm_gen_lex('aab'), ['aab', 'aba', 'baa'])
     self.assertEqual(perm_lex.perm_gen_lex('aaab'),
                      ['aaab', 'aaba', 'abaa', 'baaa'])
     self.assertEqual(perm_lex.perm_gen_lex('aabc'), [
         'aabc', 'aacb', 'abac', 'abca', 'acab', 'acba', 'baac', 'baca',
         'bcaa', 'caab', 'caba', 'cbaa'
     ])
Exemplo n.º 4
0
 def test_perm_gen_lex(self):
     self.assertEqual(
         perm_lex.perm_gen_lex('abc'),
         ['abc', 'acb', 'bac', 'bca', 'cab', 'cba'])  #regular testcase
     self.assertEqual(perm_lex.perm_gen_lex('ab'), ['ab', 'ba'])
     self.assertEqual(perm_lex.perm_gen_lex('a'),
                      ['a'])  #testcase where len(a) is equal to one
     self.assertEqual(perm_lex.perm_gen_lex(''),
                      [])  #testcase where len(a) equals zero
Exemplo n.º 5
0
    def test_perm_gen_lex(self):
    	#test an empty string
        self.assertEqual(perm_lex.perm_gen_lex(''), [''])

        # test one single character
        self.assertEqual(perm_lex.perm_gen_lex('a'), ['a'])

    	#test ab string
        self.assertEqual(perm_lex.perm_gen_lex('ab'),['ab','ba'])

        #test abc string
        self.assertEqual(perm_lex.perm_gen_lex('abc'),['abc', 'acb', 'bac', 'bca', 'cab', 'cba'])        
Exemplo n.º 6
0
 def test_perm_gen_lex_big(self):
     '''more complicated permutation test'''
     self.assertEqual(perm_lex.perm_gen_lex('abcd'), [
         'abcd', 'abdc', 'acbd', 'acdb', 'adbc', 'adcb', 'bacd', 'badc',
         'bcad', 'bcda', 'bdac', 'bdca', 'cabd', 'cadb', 'cbad', 'cbda',
         'cdab', 'cdba', 'dabc', 'dacb', 'dbac', 'dbca', 'dcab', 'dcba'
     ])
Exemplo n.º 7
0
 def test_perm_gen_lex04(self):
     #tests 4 letter string ---> 4*3*2*1==24 permutations
     self.assertEqual(perm_lex.perm_gen_lex('abcd'), [
         'abcd', 'abdc', 'acbd', 'acdb', 'adbc', 'adcb', 'bacd', 'badc',
         'bcad', 'bcda', 'bdac', 'bdca', 'cabd', 'cadb', 'cbad', 'cbda',
         'cdab', 'cdba', 'dabc', 'dacb', 'dbac', 'dbca', 'dcab', 'dcba'
     ])
Exemplo n.º 8
0
 def test_perm_gen_lex(self):
     self.assertEqual(perm_lex.perm_gen_lex('a'), ['a'])
     self.assertEqual(perm_lex.perm_gen_lex(''), [])
     self.assertEqual(perm_lex.perm_gen_lex('abc'),
                      ['abc', 'acb', 'bac', 'bca', 'cab', 'cba'])
     self.assertEqual(perm_lex.perm_gen_lex('ab'), ['ab', 'ba'])
     self.assertEqual(perm_lex.perm_gen_lex('aa'), ['aa'])
     self.assertEqual(perm_lex.perm_gen_lex('aab'), ['aab', 'aba', 'baa'])
     self.assertEqual(perm_lex.perm_gen_lex('aab'), ['aab', 'aba', 'baa'])
Exemplo n.º 9
0
def makeDummies(num):
    alpha = "abcdefghijklmnopqrstuvwxyz"
    names = perm_gen_lex(alpha[:rev_factorial(num)])
    with open("Desktop/jsondummies.json", 'w') as f:
        ids = list(map(lambda x: str(x), list(range(514, 515 + num))))
        totalStr = ''
        for i, id in enumerate(ids):
            totalStr += makeUser(514, id, ids, names) + "\n\n"
        #print(totalStr)
        f.write(totalStr)
        f.write("Hello")
    print('Done')
Exemplo n.º 10
0
def makeDummyUsers(num):
    alpha = "abcdefghijklmnopqrstuvwxyz"
    names = perm_gen_lex(alpha[:rev_factorial(num)])
    with open("jsondummies_users.json", 'w') as f:
        ids = list(map(lambda x: str(x), list(range(514, 515 + num))))
        totalStr = "{\n\"Users\":[\n"
        for i, id in enumerate(ids):
            gotBack = makeUser(514, id, ids, names)
            totalStr += gotBack[0] + ",\n\n"
        totalStr = totalStr[:len(totalStr) - 3] + "\n\n"
        totalStr += "]\n}"
        f.write(totalStr)
        #print(totalStr)
    print('Done Users')
Exemplo n.º 11
0
 def test_perm_lex(self):
     self.assertEqual(perm_lex.perm_gen_lex('c'), ['c'])
Exemplo n.º 12
0
 def test_perm_lex3(self):
     with self.assertRaises(ValueError):
         perm_lex.perm_gen_lex('')
Exemplo n.º 13
0
 def test_perm_gen_lex3(self):
     self.assertEqual(perm_lex.perm_gen_lex('a'), ['a'])
Exemplo n.º 14
0
 def test_perm_gen_lex_2(self):
     """
     Testing defaults from prompt
     """ 
     self.assertEqual(perm_lex.perm_gen_lex('a'),['a'])
Exemplo n.º 15
0
 def test_perm_gen_lex7(self):
     self.assertEqual(perm_lex.perm_gen_lex("abcd"), [])
Exemplo n.º 16
0
 def test_perm_gen_lex_one_char(self):
     """string of one character"""
     self.assertEqual(perm_lex.perm_gen_lex('a'),['a'])
Exemplo n.º 17
0
 def test_perm_gen_lex02(self):
     #tests string of length 0
     self.assertEqual(perm_lex.perm_gen_lex(''), [])
Exemplo n.º 18
0
 def test_perm_gen_lex_4(self):
     self.assertEqual(perm_lex.perm_gen_lex('wxyz'), [
         'wxyz', 'wxzy', 'wyxz', 'wyzx', 'wzxy', 'wzyx', 'xwyz', 'xwzy',
         'xywz', 'xyzw', 'xzwy', 'xzyw', 'ywxz', 'ywzx', 'yxwz', 'yxzw',
         'yzwx', 'yzxw', 'zwxy', 'zwyx', 'zxwy', 'zxyw', 'zywx', 'zyxw'
     ])
Exemplo n.º 19
0
 def test_perm_gen_lex2(self):
     """string of four characters"""
     self.assertEqual(perm_lex.perm_gen_lex('abcd'),['abcd', 'abdc', 'acbd', 'acdb', 'adbc', 'adcb', 'bacd', 'badc', 'bcad', 'bcda', 'bdac', 'bdca', 'cabd', 'cadb', 'cbad', 'cbda', 'cdab', 'cdba', 'dabc', 'dacb', 'dbac', 'dbca', 'dcab', 'dcba'])
Exemplo n.º 20
0
 def test_perm_gen_double_letter(self):
     """the same letter is used in a string"""
     self.assertEqual(perm_lex.perm_gen_lex('abb'),['abb','abb', 'bab', 'bba', 'bab', 'bba'])
Exemplo n.º 21
0
 def test_perm_gen_lex(self):
     """string of two characters"""
     self.assertEqual(perm_lex.perm_gen_lex('ab'),['ab','ba'])
Exemplo n.º 22
0
 def test_perm_gen_lex_nine(self):
     """tests a string of 9 character"""
     perm_lex.perm_gen_lex('abcdefghi')
Exemplo n.º 23
0
 def test_perm_gen_lex_three_char(self):
     """three character string"""
     self.assertEqual(perm_lex.perm_gen_lex('abc'), ['abc', 'acb', 'bac', 'bca', 'cab', 'cba'])
Exemplo n.º 24
0
 def test_perm_gen_lex(self):
     self.assertEqual(perm_lex.perm_gen_lex('ab'), ['ab', 'ba'])
Exemplo n.º 25
0
 def test_perm_gen_lex_1(self):
     self.assertEqual(perm_lex.perm_gen_lex('efg'),
                      ['efg', 'egf', 'feg', 'fge', 'gef', 'gfe'])
Exemplo n.º 26
0
 def test_perm_gen_lex6(self):
     self.assertEqual(perm_lex.perm_gen_lex(''), [])
Exemplo n.º 27
0
 def test_perm_gen_lex03(self):
     #tests string of length 1
     self.assertEqual(perm_lex.perm_gen_lex('a'), ['a'])
Exemplo n.º 28
0
 def test_perm_gen_lex_empty(self):
     """empty string"""
     self.assertEqual(perm_lex.perm_gen_lex(''),[])
Exemplo n.º 29
0
 def test_perm_gen_lex(self):
     #tests simple 2 letter string
     self.assertEqual(perm_lex.perm_gen_lex('ab'), ['ab', 'ba'])
Exemplo n.º 30
0
 def test_perm_gen_lex_3(self):
     self.assertEqual(perm_lex.perm_gen_lex('123'),
                      ['123', '132', '213', '231', '312', '321'])