def test_add(self): """Test operator add overload """ # + m3 = Matrix(self.data) m4 = m3.column + self.data3 eq_(self.result, m4.get_internal_array())
def test_delete_a_index(self): """Delete a index""" r = Matrix(self.data) content = ["i", "j", 1.1, 1] assert r.row[2] == content del r.row[0] assert r.row[1] == content
def test_add(self): r3 = Matrix(self.data) r3 = r3.row + self.content assert r3.row[3] == ["r", "s", "t", "o", ""] assert r3.row[4] == [1, 2, 3, 4, ""] assert r3.row[5] == [True, "", "", "", ""] assert r3.row[6] == [1.1, 2.2, 3.3, 4.4, 5.5]
def test_delete_an_invalid_slice(self): m = Matrix(self.data) try: del m.row[2:1] assert 1 == 2 except ValueError: assert 1 == 1
def test_iadd(self): """Test in place add""" r2 = Matrix(self.data) r2.row += self.content assert r2.row[3] == ["r", "s", "t", "o", ""] assert r2.row[4] == [1, 2, 3, 4, ""] assert r2.row[5] == [True, "", "", "", ""] assert r2.row[6] == [1.1, 2.2, 3.3, 4.4, 5.5]
def test_iadd(self): """Test in place add""" r2 = Matrix(self.data) r2.row += self.content assert r2.row[3] == ['r', 's', 't', 'o', ''] assert r2.row[4] == [1, 2, 3, 4, ''] assert r2.row[5] == [True, "", "", "", ''] assert r2.row[6] == [1.1, 2.2, 3.3, 4.4, 5.5]
def setUp(self): """ Make a test csv file as: 1,2,3,4 5,6,7,8 9,10,11,12 """ self.array = [] for i in [0, 4, 8]: array = [i + 1, i + 2, i + 3, i + 4] self.array.append(array) self.iteratable = Matrix(self.array)
def test_transpose(self): data = [[1, 2, 3], [4, 5, 6]] result = [[1, 4], [2, 5], [3, 6]] m = Matrix(data) m.transpose() eq_(result, m.get_internal_array())
def test_delete_rows_with_invalid_list(self): m = Matrix([]) m.delete_rows('ab') # bang, cannot delete
def test_wrong_index_type(self): r = Matrix(self.data) r["string"][0] # bang, cannot get
def test_wrong_index_type2(self): r = Matrix(self.data) r["string"] = 'k' # bang, cannot set
def test_empty_array_input(self): """Test empty array as input to Matrix""" m = Matrix([]) assert m.number_of_columns() == 0 assert m.number_of_rows() == 0
def test_old_style_access(self): r = Matrix(self.data) r[0, 0] = 'k' assert r[0][0] == 'k'
def test_extend_columns2(self): """Test extend columns""" m = Matrix(self.data) m.extend_columns(1.1)
def test_type_error(self): m = Matrix(self.data) m.row += 12 # bang, cannot add integer
def test_set_column_with_a_wrong_column_index(self): """Get with a wrong index""" m = Matrix(self.data) m.column[1.11] = 1 # bang, string type index
def test_extend_columns(self): """Test extend columns""" m = Matrix(self.data) m.extend_columns(self.data3) eq_(self.result, m.get_internal_array())
def test_delete_special_slice(self): r3 = Matrix(self.data) content = ['i', 'j', 1.1, 1] del r3.row[0:0] assert r3.row[1] == content assert r3.number_of_rows() == 2
def test_delete_a_slice(self): """Delete a slice""" r2 = Matrix(self.data) del r2.row[1:] assert r2.number_of_rows() == 1
def test_get_slice_of_columns(self): m = Matrix(self.data) data = m.column[:2] assert data == [[1, 1, 1], [2, 2, '']]
def test_delete_with_a_wrong_column_index(self): """Get with a wrong index""" m = Matrix(self.data) del m.column[1.11] # bang, string type index
def test_to_array(self): m = Matrix(self.data) result = [[1, 2, 3, 4, 5, 6], [1, 2, 3, 4, '', ''], [1, '', '', '', '', '']] eq_(result, m.get_internal_array())
def test_set_a_row(self): r = Matrix(self.data) content = ['r', 's', 't', 'o'] r.row[1] = content assert r.row[1] == content
def test_extend_rows_error_input(self): r = Matrix(self.data) r.extend_rows(102)
def test_set_with_a_wrong_index(self): """Get with a wrong index""" m = Matrix(self.data) m[1.1] = 1 # bang,
def test_set_using_a_slice(self): """Set a list of rows""" r = Matrix(self.data) content2 = [1, 2, 3, 4] r.row[1:] = content2 assert r.row[2] == [1, 2, 3, 4]
def test_extend_column(self): """test extend just one column""" m = Matrix(self.data) m.extend_columns([1, 1]) assert m.row[0] == self.result[0][:7]
def test_a_special_slice(self): r = Matrix(self.data) content3 = [True, False, True, False] r.row[0:0] = content3 assert r.row[0] == [True, False, True, False]
def test_iadd_list(self): """Test in place add a list """ m2 = Matrix(self.data) m2.column += self.data3 eq_(self.result, m2.get_internal_array())
def test_a_stepper_in_a_slice(self): r = Matrix(self.data) r.row[0:2:1] = [1, 1, 1, 1] assert r.row[0] == [1, 1, 1, 1] assert r.row[1] == [1, 1, 1, 1] assert r.row[2] == ['i', 'j', 1.1, 1]