import pytest import numpy as np from statsmodels.tools.testing import ParamsTableTestBunch, \ MarginTableTestBunch, Holder @pytest.mark.parametrize('attribute, bunch_type', (('params_table', ParamsTableTestBunch), ('margins_table', MarginTableTestBunch))) def check_params_table_classes(attribute, bunch_type): table = np.empty((10, 4)) bunch = bunch_type(**{attribute: table}) assert attribute in bunch def test_bad_table(): table = np.empty((10, 4)) with pytest.raises(AttributeError): ParamsTableTestBunch(margins_table=table) def test_holder(): holder = Holder() holder.new_attr = 1 assert hasattr(holder, 'new_attr') assert getattr(holder, 'new_attr') == 1