Almost there! Thanks for taking this on!
for pos, field in self.view.position_fields.items():
if field.edit_text != '':
body[pos] = field.edit_text
Will this clutter up log?
Not sure why but this piece of code isn't supposed to be in the branch anymore. I don't see it on my local repo which should be in sync with the branch being merged. I'll look into why it isn't gone yet.
for user in username:
raise TypeError("Username(s) under each position must either be a string or a list")
Would the rest of this file work as well? On a cursory glance there's a couple more places that look like they should need changing (i.e. removing old positions, etc.)
Also, let's add some tests specifically targetting this, so we can future-proof guarantees of it working!
Could you clarify on what places need more changing? Not very sure about the whole code design but all I've changed is that when a position has a list of userids, instead of just a string of one user's userid, it will know how to parse that list and add the position to each user. I assume the remaining code knows how to handle a case where one user has multiple positions, as required
I could def add tests targeting this new feature!
I think this is the only other place that needs to be updated
self.old_positions[username] = old_positions
for position in new_positions:
new_positions_reversed[position] = username
Also, I think the ceod api is the only place using UpdateMemberPositionsTransaction, so you can just change the type without needing to care about string
No due date set.
No dependencies set.
Deleting a branch is permanent. It CANNOT be undone. Continue?