def test_has_coordinator_permissions(app): # Test coordinator permissions with app.app_context(): recid = '12345' hepsubmission = get_or_create_hepsubmission(recid, 1) # Check admin user has coordinator permissions to new record admin_user = user = User.query.first() assert has_coordinator_permissions(recid, admin_user) # Create a user who is not admin and not associated with a record user = User(email='*****@*****.**', password='******', active=True) db.session.add(user) db.session.commit() login_user(user) assert not has_coordinator_permissions(recid, user) # Add the user as an uploader - should not have permission submission_participant = SubmissionParticipant(user_account=user.id, publication_recid=recid, email=user.email, role='uploader') db.session.add(submission_participant) db.session.commit() assert not has_coordinator_permissions(recid, user) # Modify record to add this user as coordinator - should now work hepsubmission.coordinator = user.get_id() db.session.add(hepsubmission) db.session.commit() assert has_coordinator_permissions(recid, user)