Exemplo n.º 1
0
def test_compound_optional():

    required = Dict.of(DateYYYYMMDD.named(u's').using(optional=False))

    f = required.from_defaults()
    assert not f.el(u's.year').optional
    assert not f.el(u's.month').optional
    assert not f.el(u's.day').optional
    assert not f.validate()

    optional = Dict.of(DateYYYYMMDD.named(u's').using(optional=True))

    f = optional.from_defaults()
    assert f.el(u's.year').optional
    assert f.el(u's.month').optional
    assert f.el(u's.day').optional
    assert f.validate()
Exemplo n.º 2
0
def test_compound_optional():

    required = Dict.of(DateYYYYMMDD.named(u's').using(optional=False))

    f = required.from_defaults()
    assert not f.find_one(u's/year').optional
    assert not f.find_one(u's/month').optional
    assert not f.find_one(u's/day').optional
    assert not f.validate()

    optional = Dict.of(DateYYYYMMDD.named(u's').using(optional=True))

    f = optional.from_defaults()
    assert f.find_one(u's/year').optional
    assert f.find_one(u's/month').optional
    assert f.find_one(u's/day').optional
    assert f.validate()
Exemplo n.º 3
0
def small_form(values=None):

    SmallForm = Dict.of(String.named(u'field1'), String.named(u'field2'),
                        Boolean.named(u'toggle1'), Boolean.named(u'toggle2'),
                        Array.named(u'multi').of(String),
                        DateYYYYMMDD.named(u'date1'))

    if values is None:
        values = {
            u'field1': u'val',
            u'toggle2': True,
            u'multi': [u'a', u'b'],
            u'date1': datetime.date(1999, 12, 31),
        }
    el = SmallForm(values)
    return {'form': el}
Exemplo n.º 4
0
def small_form(values=None):

    SmallForm = Dict.of(
        String.named(u'field1'),
        String.named(u'field2'),
        Boolean.named(u'toggle1'),
        Boolean.named(u'toggle2'),
        Array.named(u'multi').of(String),
        DateYYYYMMDD.named(u'date1'))

    if values is None:
        values = {
            u'field1': u'val',
            u'toggle2': True,
            u'multi': [u'a', u'b'],
            u'date1': datetime.date(1999, 12, 31),
            }
    el = SmallForm(values)
    return {'form': el}
Exemplo n.º 5
0
class Schema(Form):
    i1 = Integer.using(default=0)

    d1 = Dict.of(
        Integer.named('d1i1').using(default=1),
        Integer.named('d1i2').using(default=2))

    l1 = List.using(default=2).of(Integer.named('l1i1').using(default=3))

    l2 = List.using(default=3).of(
        Integer.named('l2i1').using(default=4),
        Integer.named('l2i2').using(default=5))

    l3 = List.using(default=2).of(
        List.named('l3l1').using(default=2).of(Integer.using(default=6)))

    a1 = Array.using(default=[10, 11, 12, 13, 14, 15]).of(Integer)

    dt1 = DateYYYYMMDD.using(default=date.today())
Exemplo n.º 6
0
def test_sample_compound():
    s = DateYYYYMMDD.named(u's')
    s.__compound_init__()

    assert ([field.name
             for field in s.field_schema] == [u'year', u'month', u'day'])

    e = s()
    assert e.value is None
    assert e[u'year'].value is None
    assert e.find_one(u'year').value is None

    when = datetime.date(2000, 10, 1)
    e.set(when)
    assert e.value == when
    assert e.find_one(u'year').value == 2000
    assert e.find_one(u'day').value == 1
    assert e.u == u'2000-10-01'
    assert e.find_one(u'day').u == u'01'

    e.find_one(u'day').set(5)
    assert e.value == datetime.date(2000, 10, 5)
    assert e.find_one(u'day').value == 5
    assert e.u == u'2000-10-05'

    e = s()
    e.set(None)
    assert e.value is None
    assert e.u == u''
    assert e[u'year'].value is None
    assert e.find_one(u'year').value is None

    e = s()
    e.set(u'snaggle')
    assert e.value is None
    assert e.u == u''
    assert e[u'year'].value is None
    assert e.find_one(u'year').value is None
Exemplo n.º 7
0
def test_sample_compound():
    s = DateYYYYMMDD.named(u's')
    s.__compound_init__()

    assert ([field.name for field in s.field_schema] ==
            [u'year', u'month', u'day'])

    e = s()
    assert e.value is None
    assert e[u'year'].value is None
    assert e.el(u'year').value is None

    when = datetime.date(2000, 10, 1)
    e.set(when)
    assert e.value == when
    assert e.el(u'year').value == 2000
    assert e.el(u'day').value == 1
    assert e.u == u'2000-10-01'
    assert e.el(u'day').u == u'01'

    e.el(u'day').set(5)
    assert e.value == datetime.date(2000, 10, 5)
    assert e.el(u'day').value == 5
    assert e.u == u'2000-10-05'

    e = s()
    e.set(None)
    assert e.value is None
    assert e.u == u''
    assert e[u'year'].value is None
    assert e.el(u'year').value is None

    e = s()
    e.set(u'snaggle')
    assert e.value is None
    assert e.u == u''
    assert e[u'year'].value is None
    assert e.el(u'year').value is None
Exemplo n.º 8
0
def test_compound_is_empty():
    element = DateYYYYMMDD()
    assert element.is_empty

    element.find_one(u'year').set(1979)
    assert not element.is_empty
Exemplo n.º 9
0
def test_compound_is_empty():
    element = DateYYYYMMDD()
    assert element.is_empty

    element.el(u'year').set(1979)
    assert not element.is_empty
Exemplo n.º 10
0
    List.named('phone_numbers').of(PhoneNumber)
)

class ContactForm(Form):
    name = String.validated_by(Present())
    addresses = Address.using(default=1)


GuardianContentSearch = Dict.of(
    String.named('q').using(label='Search'
               ).validated_by(Converted()),
    String.named('tag').using(label='Tag filter', optional=True
               ).validated_by(Converted()),
    String.named('section').using(label='Section filter', optional=True
               ).validated_by(Converted()),
    DateYYYYMMDD.named('from-date').using(label='From Date filter', optional=True
               ).validated_by(Converted()),
    DateYYYYMMDD.named('to-date').using(label='To Date filter', optional=True
               ).validated_by(Converted()),
    Enum.named('order-by').valued(['newest', 'oldest', 'relevance']
               ).using(default='newest', optional=True),
    Integer.named('page').using(label='Page Index', default=1
               ).validated_by(Converted(), ValueGreaterThan(0)),
    Integer.named('page-size').using(label='Page Size', default=10
               ).validated_by(Converted(), ValueGreaterThan(0)),
    Enum.named('format').valued(['json', 'xml']).using(default='json'
               ).validated_by(Converted()),
    JoinedString.named('show-fields').using(label='Show fields', default=['all']
               ).validated_by(Converted()),
    JoinedString.named('show-tags').using(label='Show tabs', default=['all']
               ).validated_by(Converted()),
    JoinedString.named('show-refinements').using(label='Show refinements', default=['all']