Skip to content

Commit 62f8827

Browse files
authored
Merge pull request #27 from chrisgavin/case-sensitivity
Fix an issue where upper-case letters in desired maintainers always cause a diff to be generated.
2 parents d39f418 + 8deb564 commit 62f8827

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

lib/entitlements/backend/github_team/provider.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -199,8 +199,8 @@ def diff_existing_updated_metadata(existing_group, group, base_diff)
199199
end
200200
end
201201

202-
existing_maintainers = existing_group.metadata_fetch_if_exists("team_maintainers")
203-
changed_maintainers = group.metadata_fetch_if_exists("team_maintainers")
202+
existing_maintainers = existing_group.metadata_fetch_if_exists("team_maintainers")&.downcase
203+
changed_maintainers = group.metadata_fetch_if_exists("team_maintainers")&.downcase
204204
if existing_maintainers != changed_maintainers
205205
base_diff[:metadata] ||= {}
206206
if existing_maintainers.nil? && !changed_maintainers.nil?

spec/unit/entitlements/backend/github_team/provider_spec.rb

+22
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,28 @@
429429
metadata: { team_maintainers: "remove" }
430430
)
431431
end
432+
433+
it "diffs team maintainers no change" do
434+
entitlements_group = Entitlements::Models::Group.new(
435+
dn: "cn=diff-cats,ou=Github,dc=github,dc=fake",
436+
members: Set.new(%w[cuddles fluffy morris WHISKERS].map { |u| "uid=#{u},ou=People,dc=kittens,dc=net" }),
437+
metadata: { "team_maintainers" => "cuddles,Fluffy" }
438+
)
439+
440+
github_team = Entitlements::Backend::GitHubTeam::Models::Team.new(
441+
team_id: 2222,
442+
team_name: "diff-cats",
443+
members: Set.new(%w[cuddles fluffy morris WHISKERS].map { |u| "uid=#{u},ou=People,dc=kittens,dc=net" }),
444+
ou: "ou=kittensinc,ou=GitHub,dc=github,dc=fake",
445+
metadata: { "team_maintainers" => "cuddles,fluffy" }
446+
)
447+
448+
result = subject.diff_existing_updated(entitlements_group, github_team)
449+
expect(result).to eq(
450+
added: Set.new,
451+
removed: Set.new,
452+
)
453+
end
432454
end
433455

434456
describe "#create_github_team_group" do

0 commit comments

Comments
 (0)