1538 |
1538 |
resp.forms['listing-settings']['filter-0-2-value'].value = '2'
|
1539 |
1539 |
resp = resp.forms['listing-settings'].submit()
|
1540 |
1540 |
assert resp.text.count('<tr') == 1 + 1
|
|
1541 |
|
|
1542 |
|
|
1543 |
def test_backoffice_item_filter_with_bracket(pub):
|
|
1544 |
pub.user_class.wipe()
|
|
1545 |
create_superuser(pub)
|
|
1546 |
pub.role_class.wipe()
|
|
1547 |
role = pub.role_class(name='test')
|
|
1548 |
role.store()
|
|
1549 |
|
|
1550 |
NamedDataSource.wipe()
|
|
1551 |
data_source = NamedDataSource(name='foobar')
|
|
1552 |
data_source.data_source = {'type': 'json', 'value': 'http://some.url'}
|
|
1553 |
data_source.store()
|
|
1554 |
|
|
1555 |
FormDef.wipe()
|
|
1556 |
formdef = FormDef()
|
|
1557 |
formdef.name = 'form-title'
|
|
1558 |
formdef.fields = [
|
|
1559 |
fields.ItemField(
|
|
1560 |
id='4',
|
|
1561 |
label='4th field',
|
|
1562 |
type='item',
|
|
1563 |
data_source={'type': 'foobar'},
|
|
1564 |
display_locations=['validation', 'summary', 'listings'],
|
|
1565 |
)
|
|
1566 |
]
|
|
1567 |
formdef.workflow_roles = {'_receiver': role.id}
|
|
1568 |
formdef.store()
|
|
1569 |
|
|
1570 |
data_class = formdef.data_class()
|
|
1571 |
data_class.wipe()
|
|
1572 |
|
|
1573 |
formdata = data_class()
|
|
1574 |
formdata.data = {}
|
|
1575 |
formdata.data['4'] = 'foo'
|
|
1576 |
formdata.data['4_display'] = 'Foo'
|
|
1577 |
formdata.just_created()
|
|
1578 |
formdata.jump_status('new')
|
|
1579 |
formdata.store()
|
|
1580 |
|
|
1581 |
app = login(get_app(pub))
|
|
1582 |
|
|
1583 |
resp = app.get('/backoffice/management/form-title/')
|
|
1584 |
resp.forms['listing-settings']['filter-4'].checked = True
|
|
1585 |
resp = resp.forms['listing-settings'].submit()
|
|
1586 |
|
|
1587 |
resp.forms['listing-settings']['filter-4-value'].value = 'foo'
|
|
1588 |
resp = resp.forms['listing-settings'].submit()
|
|
1589 |
assert resp.text.count('<td>Foo</td>') == 1
|
|
1590 |
|
|
1591 |
formdata = data_class()
|
|
1592 |
formdata.data = {}
|
|
1593 |
formdata.data['4'] = '['
|
|
1594 |
formdata.data['4_display'] = '['
|
|
1595 |
formdata.just_created()
|
|
1596 |
formdata.jump_status('new')
|
|
1597 |
formdata.store()
|
|
1598 |
|
|
1599 |
resp = app.get('/backoffice/management/form-title/')
|
|
1600 |
resp.forms['listing-settings']['filter-4'].checked = True
|
|
1601 |
resp = resp.forms['listing-settings'].submit()
|
|
1602 |
|
|
1603 |
resp.forms['listing-settings']['filter-4-value'].value = '['
|
|
1604 |
resp = resp.forms['listing-settings'].submit()
|
|
1605 |
assert resp.text.count('<td>[</td>') == 1
|
1541 |
|
-
|