def test_join_by_rows_for_unique_ids(self): storage = StorageFactory().get_storage('dict_storage') storage.write_table( table_name='dataset1', table_data={ "id":array([2,4]), "attr":array([4,7]) } ) storage.write_table( table_name='dataset2', table_data={ "id":array([1,2]), "attr":array([55,66]) } ) ds1 = Dataset(in_storage=storage, in_table_name='dataset1', id_name='id') ds2 = Dataset(in_storage=storage, in_table_name='dataset2', id_name='id') threw_exception = False try: ds1.join_by_rows(ds2) except StandardError: threw_exception = True self.assert_(threw_exception)
def test_join_by_rows_for_char_arrays(self): from numpy import alltrue storage = StorageFactory().get_storage('dict_storage') storage.write_table( table_name='dataset1', table_data={ 'id':array([2,4,6,8]), 'attr':array(['4','7','2','1']) } ) storage.write_table( table_name='dataset2', table_data={ 'id':array([1,5,9]), 'attr':array(['55','66','100']) } ) ds1 = Dataset(in_storage=storage, in_table_name='dataset1', id_name='id') ds2 = Dataset(in_storage=storage, in_table_name='dataset2', id_name='id') ds1.join_by_rows(ds2) self.assert_(alltrue(ds1.get_attribute('attr') == array(['4','7','2','1','55','66','100']))) self.assert_(alltrue(ds2.get_attribute('attr') == array(['55','66','100'])))
def test_join_by_rows(self): storage = StorageFactory().get_storage('dict_storage') storage.write_table( table_name='dataset1', table_data={ 'id':array([2,4,6,8]), 'attr':array([4,7,2,1]) } ) storage.write_table( table_name='dataset2', table_data={ 'id':array([1,5,9]), 'attr':array([55,66,100]) } ) ds1 = Dataset(in_storage=storage, in_table_name='dataset1', id_name='id') ds2 = Dataset(in_storage=storage, in_table_name='dataset2', id_name='id') ds1.join_by_rows(ds2) self.assert_(ma.allclose(ds1.get_attribute('attr'), array([4,7,2,1,55,66,100]))) self.assert_(ma.allclose(ds2.get_attribute('attr'), array([55,66,100])))