From 0a3c7c4bfbc0e3db00bcadb9bef245826c684c40 Mon Sep 17 00:00:00 2001 From: Andreja Date: Fri, 21 Dec 2018 10:50:18 +0100 Subject: [PATCH] added tests --- Orange/widgets/data/owmergedata.py | 4 ++-- Orange/widgets/data/tests/test_owmergedata.py | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Orange/widgets/data/owmergedata.py b/Orange/widgets/data/owmergedata.py index ec4441fecf0..6d13a59dd1d 100644 --- a/Orange/widgets/data/owmergedata.py +++ b/Orange/widgets/data/owmergedata.py @@ -366,14 +366,14 @@ def _join_table_by_indices(self, reduced_extra, indices): X = self._join_array_by_indices(self.data.X, reduced_extra.X, indices) Y = self._join_array_by_indices( np.c_[self.data.Y], np.c_[reduced_extra.Y], indices) - string_cols = [i for i, var in enumerate(self.data.domain.metas) if var.is_string] + string_cols = [i for i, var in enumerate(domain.metas) if var.is_string] metas = self._join_array_by_indices( self.data.metas, reduced_extra.metas, indices, string_cols) table = Orange.data.Table.from_numpy(domain, X, Y, metas) table.name = getattr(self.data, 'name') table.attributes = getattr(self.data, 'attributes') table.ids = getattr(self.data, 'ids') - return Orange.data.Table.from_numpy(domain, X, Y, metas) + return table @staticmethod def _join_array_by_indices(left, right, indices, string_cols=None): diff --git a/Orange/widgets/data/tests/test_owmergedata.py b/Orange/widgets/data/tests/test_owmergedata.py index 1e48e7fcc57..dc3120704e9 100644 --- a/Orange/widgets/data/tests/test_owmergedata.py +++ b/Orange/widgets/data/tests/test_owmergedata.py @@ -32,7 +32,11 @@ def setUpClass(cls): yB = np.array([np.nan, 1, 0]) metasB = np.array([[np.nan], [1], [0]]).astype(object) cls.dataA = Table(domainA, XA, yA, metasA) + cls.dataA.name = 'dataA' + cls.dataA.attributes = 'dataA attributes' cls.dataB = Table(domainB, XB, yB, metasB) + cls.dataB.name = 'dataB' + cls.dataB.attributes = 'dataB attributes' def setUp(self): self.widget = self.create_widget(OWMergeData) @@ -233,8 +237,9 @@ def test_output_merge_by_attribute_left(self): self.widget.commit() output = self.get_output(self.widget.Outputs.data) self.assertTablesEqual(output, result) - self.assertNotEqual(id(output), id(self.dataA)) - self.assertNotEqual(id(output), id(self.dataB)) + self.assertEqual(output.name, self.dataA.name) + np.testing.assert_array_equal(output.ids, self.dataA.ids) + self.assertEqual(output.attributes, self.dataA.attributes) def test_output_merge_by_attribute_inner(self): """Check output for merging option 'Find matching rows' by attribute"""