14 |
14 |
from wcs.workflows import Workflow
|
15 |
15 |
|
16 |
16 |
from ..utilities import clean_temporary_pub, create_temporary_pub, get_app, login
|
17 |
|
from .test_all import create_user
|
|
17 |
from .test_all import create_user, create_user_and_admin
|
18 |
18 |
|
19 |
19 |
|
20 |
20 |
def pytest_generate_tests(metafunc):
|
... | ... | |
1090 |
1090 |
block.name = 'foobar'
|
1091 |
1091 |
block.fields = [
|
1092 |
1092 |
fields.StringField(id='123', required=True, label='Test', type='string'),
|
1093 |
|
fields.FileField(id='234', required=True, label='Test2', type='file'),
|
|
1093 |
fields.FileField(id='234', required=True, label='Test2', type='file', varname='test2'),
|
1094 |
1094 |
]
|
1095 |
1095 |
block.store()
|
1096 |
1096 |
|
... | ... | |
1098 |
1098 |
formdef.name = 'form title'
|
1099 |
1099 |
formdef.fields = [
|
1100 |
1100 |
fields.PageField(id='0', label='1st page', type='page'),
|
1101 |
|
fields.BlockField(id='1', label='test', type='block:foobar', max_items=3),
|
|
1101 |
fields.BlockField(id='1', label='test', type='block:foobar', max_items=3, varname='block'),
|
1102 |
1102 |
fields.PageField(id='2', label='2nd page', type='page'),
|
1103 |
1103 |
]
|
1104 |
1104 |
formdef.store()
|
|
1105 |
formdef.data_class().wipe()
|
1105 |
1106 |
|
1106 |
1107 |
app = get_app(pub)
|
1107 |
1108 |
resp = app.get(formdef.get_url())
|
... | ... | |
1138 |
1139 |
assert '>foo2<' in resp
|
1139 |
1140 |
assert 'test2.txt' in resp
|
1140 |
1141 |
|
|
1142 |
# check they appear in API
|
|
1143 |
create_user_and_admin(pub)
|
|
1144 |
app = login(get_app(pub), username='admin', password='admin')
|
|
1145 |
resp = app.get(formdef.get_api_url() + 'list?full=on')
|
|
1146 |
assert app.get(resp.json[0]['fields']['block_raw'][0]['test2']['url']).body == b'foobar1'
|
|
1147 |
assert app.get(resp.json[0]['fields']['block_raw'][1]['test2']['url']).body == b'foobar2'
|
|
1148 |
|
1141 |
1149 |
|
1142 |
1150 |
@pytest.mark.parametrize('removed_line', [0, 1, 2])
|
1143 |
1151 |
def test_block_repeated_remove_line(pub, removed_line):
|