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
Exemple #2
0
            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',