- [
- ['active', api_fixture('users')['active'], [[api_fixture('repositories')['foo'], true, true],
- [api_fixture('repositories')['repository3'], false, false],
- [api_fixture('repositories')['repository4'], true, false]],],
- ['admin', api_fixture('users')['admin'], []]
- ].each do |token, user, repos|
- test "verify repositories for user #{token}" do
- visit page_with_token(token, '/manage_account')
- verify_repositories user, repos
+ test "verify repositories for active user" do
+ visit page_with_token('active', '/manage_account')
+
+ repos = [[api_fixture('repositories')['foo'], true, true],
+ [api_fixture('repositories')['repository3'], false, false],
+ [api_fixture('repositories')['repository4'], true, false]]
+
+ repos.each do |(repo, writable, sharable)|
+ within('tr', text: repo['name']+'.git') do
+ if sharable
+ assert_selector 'a', text:'Share'
+ assert_text 'writable'
+ else
+ assert_text repo['name']
+ assert_no_selector 'a', text:'Share'
+ if writable
+ assert_text 'writable'
+ else
+ assert_text 'read-only'
+ end
+ end
+ end