def test_bad_type(self): self.assertRaises(TypeError, lambda: _coerce_channel_mapping('foo')) self.assertRaises(TypeError, lambda: _coerce_channel_mapping(object())) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([object()])) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([[0], [object()]]))
def test_bad_size(self): self.assertRaises(TypeError, lambda: _coerce_channel_mapping(0)) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([])) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([[]])) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([[], []])) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([[1, 2], []])) self.assertRaises(TypeError, lambda: _coerce_channel_mapping([[1], [2, 3]]))
def test_matrix(self): self.assertEqual(_coerce_channel_mapping([[1], [2]]), [[1], [2]]) self.assertEqual(_coerce_channel_mapping([[1, 2], [3, 4]]), [[1, 2], [3, 4]]) self.assertEqual(_coerce_channel_mapping([[1, 2, 3], [4, 5, 6]]), [[1, 2, 3], [4, 5, 6]])
def test_default(self): self.assertEqual(_coerce_channel_mapping(None), _coerce_channel_mapping('IQ'))
def test_iq_shorthand(self): self.assertEqual(_coerce_channel_mapping('IQ'), [[1, 0], [0, 1]]) self.assertEqual(_coerce_channel_mapping('QI'), [[0, 1], [1, 0]])
def test_one_channel_shorthand(self): self.assertEqual(_coerce_channel_mapping(1), [[1]]) self.assertEqual(_coerce_channel_mapping(2), [[0, 1]]) self.assertEqual(_coerce_channel_mapping(3), [[0, 0, 1]])