PowerShellForGitHub icon indicating copy to clipboard operation
PowerShellForGitHub copied to clipboard

Fix coalesced Team permission property

Open HowardWolosky opened this issue 3 years ago • 0 comments

Description

When retrieving the permissions granted to a team for a repository, the API returns an array of booleans indicating what individual permissions the team currently has.

name permissions granted
pull pull
triage pull, triage
push pull, triage, push
maintain pull, triage, push, maintain
admin pull, triage, push, maintain, admin

As you can see, each permissions builds on top of the previous permission. When adding extra properties to this returned object via Add-GitHubRepositoryTeamPermissionAdditionalProperties, we also add a new permission property that attempts to represent the collection of permissions with their current top-permission level.

The logic however incorrectly favored push over maintain and thus would always said that a Team had push permission when in fact it may have actually had maintain permission.

This simple change corrects that ordering mistake.

Issues Fixed

Fixes #360

References

Check team permissions for a repository

Checklist

  • [x] You actually ran the code that you just wrote, especially if you did just "one last quick change".
  • [x] ~~Comment-based help added/updated, including examples.~~
  • [x] Static analysis is reporting back clean.
  • [x] New/changed code adheres to our coding guidelines.
  • [x] ~~Formatters were created for any new types being added.~~
  • [x] ~~New/changed code continues to support the pipeline.~~
  • [x] ~~Changes to the manifest file follow the manifest guidance.~~
  • [x] Unit tests were added/updated and are all passing. See testing guidelines. This includes making sure that all pipeline input variations have been covered.
  • [x] ~~Relevant usage examples have been added/updated in USAGE.md.~~
  • [x] ~~If desired, ensure your name is added to our Contributors list~~

HowardWolosky avatar Jul 26 '22 22:07 HowardWolosky