0001-manager-include-ou-in-roles-csv-export-45809.patch
src/authentic2/manager/resources.py | ||
---|---|---|
67 | 67 | |
68 | 68 |
class Meta: |
69 | 69 |
model = Role |
70 |
fields = ('name', 'slug', 'members') |
|
70 |
fields = ('name', 'slug', 'members', 'ou')
|
|
71 | 71 |
export_order = fields |
72 |
widgets = { |
|
73 |
'ou': { |
|
74 |
'field': 'name', |
|
75 |
} |
|
76 |
} |
tests/test_role_manager.py | ||
---|---|---|
43 | 43 |
reader = csv.reader([force_text(line) for line in export_response.body.split(force_bytes('\r\n'))], delimiter=',') |
44 | 44 |
rows = [row for row in reader] |
45 | 45 | |
46 |
assert rows[0] == ['name', 'slug', 'members'] |
|
46 |
assert rows[0] == ['name', 'slug', 'members', 'ou']
|
|
47 | 47 |
assert len(rows)-2 == 2 # csv header and last EOL |
48 | 48 |
assert set([row[1] for row in rows[1:3]]) == set(['role_ou1', 'role_ou2']) |
49 |
assert set([row[3] for row in rows[1:3]]) == set(['OU1', 'OU2']) |
|
49 | 50 | |
50 | 51 |
response.form.set('search-text', 'role_ou1') |
51 | 52 |
search_response = response.form.submit() |
... | ... | |
61 | 62 |
reader = csv.reader([force_text(line) for line in export_response.body.split(force_bytes('\r\n'))], delimiter=',') |
62 | 63 |
rows = [row for row in reader] |
63 | 64 | |
64 |
assert rows[0] == ['name', 'slug', 'members'] |
|
65 |
assert rows[0] == ['name', 'slug', 'members', 'ou']
|
|
65 | 66 |
assert len(rows)-2 == 1 # csv header and last EOL |
66 | 67 |
assert rows[1][1] == 'role_ou1' |
67 | 68 | |
68 |
- |