def _deep_instance(): ret = record('a', 'c') ret.a = record('b') ret.a.b = 'val4' ret.c = record('d') ret.c.d = 'val5' return ret
fields = '__all__' access = { ('bank_account', 'bank_name', 'bank_balance'): access_bank_details, 'contract_id': access_contract_id, None: access_check, } bank_account = forms.CharField() bank_name = forms.CharField() bank_balance = forms.FloatField() contract_id = forms.IntegerField() some_other_field = forms.CharField() return BankForm User = record('edit_bank_account', 'edit_contract_id', 'do_stuff') @pytest.fixture def anon_user(): """Create test anonymous user (without any permissions).""" return User(edit_bank_account=False, edit_contract_id=False, do_stuff=False) @pytest.fixture def admin_user(): """Create test admin user (with all).""" return User(edit_bank_account=True, edit_contract_id=True, do_stuff=True) def test_access_meta(anon_user, admin_user, bank_form_class):
from tests import record def _deep_instance(): ret = record('a', 'c') ret.a = record('b') ret.a.b = 'val4' ret.c = record('d') ret.c.d = 'val5' return ret @pytest.mark.parametrize( ['model', 'result'], [ (record('x', 'y'), dict(x='val1', y='val2')), (record('z', 'f'), dict(z='val1', f='val2')), ]) def test_model_to_dict(model, result): """Test model to dict conversion.""" assert sqlalchemy.model_to_dict(model(**result), result.keys()) == result @pytest.mark.parametrize( ['instance', 'result'], [ ( _deep_instance(), { 'a.b': 'val4', 'c.d': 'val5',