Esempio n. 1
0
 def test_TrippleDigit(self):
     expected = [
         [1, 1, 1],
         [1, 1, 2],
         [1, 1, 3],
         [1, 2, 1],
         [1, 2, 2],
         [1, 2, 3],
         [1, 3, 1],
         [1, 3, 2],
         [1, 3, 3],
         [2, 1, 1],
         [2, 1, 2],
         [2, 1, 3],
         [2, 2, 1],
         [2, 2, 2],
         [2, 2, 3],
         [2, 3, 1],
         [2, 3, 2],
         [2, 3, 3],
         [3, 1, 1],
         [3, 1, 2],
         [3, 1, 3],
         [3, 2, 1],
         [3, 2, 2],
         [3, 2, 3],
         [3, 3, 1],
         [3, 3, 2],
         [3, 3, 3],
     ]
     self.assertListEqual(generate(3, [1, 2, 3]), expected)
Esempio n. 2
0
 def test_TrippleDigit_DoubleRepeat(self):
     expected = [
         [1, 1, 1],
         [2, 2, 2],
         [3, 3, 3],
     ]
     self.assertListEqual(generate(3, [1, 2, 3], consecutive_repeats=2),
                          expected)
Esempio n. 3
0
 def test_SingleDigit(self):
     self.assertListEqual(generate(1, [1, 2, 3]), [[1], [2], [3]])
Esempio n. 4
0
 def test_ZeroLen(self):
     self.assertListEqual(generate(0, [1, 2, 3]), [])
Esempio n. 5
0
 def test_QuadrupleDigit_SingleRepeat(self):
     expected = [
         [1, 1, 1, 1],
         [1, 1, 1, 2],
         [1, 1, 1, 3],
         [1, 1, 2, 1],
         [1, 1, 2, 2],
         [1, 1, 2, 3],
         [1, 1, 3, 1],
         [1, 1, 3, 2],
         [1, 1, 3, 3],
         [1, 2, 1, 1],
         [1, 2, 2, 1],
         [1, 2, 2, 2],
         [1, 2, 2, 3],
         [1, 2, 3, 3],
         [1, 3, 1, 1],
         [1, 3, 2, 2],
         [1, 3, 3, 1],
         [1, 3, 3, 2],
         [1, 3, 3, 3],
         [2, 1, 1, 1],
         [2, 1, 1, 2],
         [2, 1, 1, 3],
         [2, 1, 2, 2],
         [2, 1, 3, 3],
         [2, 2, 1, 1],
         [2, 2, 1, 2],
         [2, 2, 1, 3],
         [2, 2, 2, 1],
         [2, 2, 2, 2],
         [2, 2, 2, 3],
         [2, 2, 3, 1],
         [2, 2, 3, 2],
         [2, 2, 3, 3],
         [2, 3, 1, 1],
         [2, 3, 2, 2],
         [2, 3, 3, 1],
         [2, 3, 3, 2],
         [2, 3, 3, 3],
         [3, 1, 1, 1],
         [3, 1, 1, 2],
         [3, 1, 1, 3],
         [3, 1, 2, 2],
         [3, 1, 3, 3],
         [3, 2, 1, 1],
         [3, 2, 2, 1],
         [3, 2, 2, 2],
         [3, 2, 2, 3],
         [3, 2, 3, 3],
         [3, 3, 1, 1],
         [3, 3, 1, 2],
         [3, 3, 1, 3],
         [3, 3, 2, 1],
         [3, 3, 2, 2],
         [3, 3, 2, 3],
         [3, 3, 3, 1],
         [3, 3, 3, 2],
         [3, 3, 3, 3],
     ]
     self.assertListEqual(generate(4, [1, 2, 3], consecutive_repeats=1),
                          expected)
Esempio n. 6
0
 def test_QuadrupleDigit_CannotQuadrupleRepeat(self):
     self.assertListEqual(generate(4, [1, 2, 3], consecutive_repeats=4), [])
Esempio n. 7
0
 def test_TrippleDigit_CannotTrippleRepeat(self):
     self.assertListEqual(generate(3, [1, 2, 3], consecutive_repeats=3), [])
Esempio n. 8
0
 def test_DoubleDigit_SingleRepeat(self):
     expected = [[1, 1], [2, 2], [3, 3]]
     self.assertListEqual(generate(2, [1, 2, 3], consecutive_repeats=1),
                          expected)
Esempio n. 9
0
 def test_DoubleDigit_CannotDoubleRepeat(self):
     self.assertListEqual(generate(2, [1, 2, 3], consecutive_repeats=2), [])
Esempio n. 10
0
 def test_SingleDigit_CannotRepeat(self):
     self.assertListEqual(generate(1, [1, 2, 3], consecutive_repeats=1), [])
Esempio n. 11
0
 def test_DoubleDigit(self):
     expected = [[1, 1], [1, 2], [1, 3], [2, 1], [2, 2], [2, 3], [3, 1],
                 [3, 2], [3, 3]]
     self.assertListEqual(generate(2, [1, 2, 3]), expected)