33from all_your_base import rebase
44
55
6- # test cases adapted from `x-common //canonical-data.json` @ version: 1.0 .0
6+ # Tests adapted from `problem-specifications //canonical-data.json` @ v1.1 .0
77
88class AllYourBaseTests (unittest .TestCase ):
99
@@ -43,6 +43,18 @@ def test_multiple_zeroes(self):
4343 def test_leading_zeros (self ):
4444 self .assertEqual (rebase (7 , [0 , 6 , 0 ], 10 ), [4 , 2 ])
4545
46+ def test_first_base_is_one (self ):
47+ with self .assertRaises (ValueError ):
48+ rebase (1 , [], 10 )
49+
50+ def test_first_base_is_zero (self ):
51+ with self .assertRaises (ValueError ):
52+ rebase (0 , [], 10 )
53+
54+ def test_first_base_is_negative (self ):
55+ with self .assertRaises (ValueError ):
56+ rebase (- 2 , [1 ], 10 )
57+
4658 def test_negative_digit (self ):
4759 with self .assertRaises (ValueError ):
4860 rebase (2 , [1 , - 1 , 1 , 0 , 1 , 0 ], 10 )
@@ -51,26 +63,14 @@ def test_invalid_positive_digit(self):
5163 with self .assertRaises (ValueError ):
5264 rebase (2 , [1 , 2 , 1 , 0 , 1 , 0 ], 10 )
5365
54- def test_first_base_is_one (self ):
55- with self .assertRaises (ValueError ):
56- rebase (1 , [], 10 )
57-
5866 def test_second_base_is_one (self ):
5967 with self .assertRaises (ValueError ):
6068 rebase (2 , [1 , 0 , 1 , 0 , 1 , 0 ], 1 )
6169
62- def test_first_base_is_zero (self ):
63- with self .assertRaises (ValueError ):
64- rebase (0 , [], 10 )
65-
6670 def test_second_base_is_zero (self ):
6771 with self .assertRaises (ValueError ):
6872 rebase (10 , [7 ], 0 )
6973
70- def test_first_base_is_negative (self ):
71- with self .assertRaises (ValueError ):
72- rebase (- 2 , [1 ], 10 )
73-
7474 def test_second_base_is_negative (self ):
7575 with self .assertRaises (ValueError ):
7676 rebase (2 , [1 ], - 7 )
0 commit comments