Skip to content
This repository has been archived by the owner on Apr 4, 2024. It is now read-only.

Commit

Permalink
Fix warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
notriddle committed Nov 2, 2017
1 parent c752310 commit 25b09a2
Show file tree
Hide file tree
Showing 6 changed files with 21 additions and 17 deletions.
8 changes: 4 additions & 4 deletions apps/bors_database/lib/context/permission.ex
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,19 @@ defmodule BorsNG.Database.Context.Permission do
where: u.id == l.user_id)
end

def has_permission?(:member, user, patch) do
def permission?(:member, user, patch) do
%User{id: user_id} = user
%Patch{project_id: project_id} = patch
project_member?(user_id, project_id) or
has_permission?(:reviewer, user, patch)
permission?(:reviewer, user, patch)
end
def has_permission?(:reviewer, user, patch) do
def permission?(:reviewer, user, patch) do
%User{id: user_id} = user
%Patch{id: patch_id, project_id: project_id} = patch
project_reviewer?(user_id, project_id) or
patch_delegated_reviewer?(user_id, patch_id)
end
def has_permission?(:none, _, _) do
def permission?(:none, _, _) do
true
end

Expand Down
2 changes: 1 addition & 1 deletion apps/bors_database/lib/project.ex
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ defmodule BorsNG.Database.Project do
ping!(to_string(project_id))
end
def ping!(project_id) do
BorsNG.Endpoint.broadcast!("project_ping:1", "new_msg", %{})
BorsNG.Endpoint.broadcast!("project_ping:#{project_id}", "new_msg", %{})
end

schema "projects" do
Expand Down
16 changes: 8 additions & 8 deletions apps/bors_database/test/context/permission_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -30,28 +30,28 @@ defmodule BorsNG.Database.Context.PermissionTest do

test "user does not have permission by default", params do
%{patch: patch, user: user} = params
refute Permission.has_permission?(:reviewer, user, patch)
refute Permission.has_permission?(:member, user, patch)
refute Permission.permission?(:reviewer, user, patch)
refute Permission.permission?(:member, user, patch)
end

test "reviewers have permission", params do
%{project: project, patch: patch, user: user} = params
Repo.insert!(%LinkUserProject{user: user, project: project})
assert Permission.has_permission?(:reviewer, user, patch)
assert Permission.has_permission?(:member, user, patch)
assert Permission.permission?(:reviewer, user, patch)
assert Permission.permission?(:member, user, patch)
end

test "delegated users have permission", params do
%{patch: patch, user: user} = params
Repo.insert!(%UserPatchDelegation{user: user, patch: patch})
assert Permission.has_permission?(:reviewer, user, patch)
assert Permission.has_permission?(:member, user, patch)
assert Permission.permission?(:reviewer, user, patch)
assert Permission.permission?(:member, user, patch)
end

test "members have partial permission", params do
%{project: project, patch: patch, user: user} = params
Repo.insert!(%LinkMemberProject{user: user, project: project})
refute Permission.has_permission?(:reviewer, user, patch)
assert Permission.has_permission?(:member, user, patch)
refute Permission.permission?(:reviewer, user, patch)
assert Permission.permission?(:member, user, patch)
end
end
6 changes: 4 additions & 2 deletions apps/bors_frontend/test/command_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,10 @@ defmodule BorsNG.CommandTest do
assert :none == Command.required_permission_level([:ping])
assert :member == Command.required_permission_level([{:try, ""}])
assert :member == Command.required_permission_level([{:try, ""}, :ping])
assert :reviewer == Command.required_permission_level([:approve, {:try, ""}])
assert :reviewer == Command.required_permission_level([{:try, ""}, :approve])
assert :reviewer ==
Command.required_permission_level([:approve, {:try, ""}])
assert :reviewer ==
Command.required_permission_level([{:try, ""}, :approve])
end

test "running ping command should post comment", %{proj: proj} do
Expand Down
2 changes: 1 addition & 1 deletion apps/bors_frontend/web/command.ex
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,7 @@ defmodule BorsNG.Command do

cmd_list
|> required_permission_level()
|> Permission.has_permission?(c.commenter, c.patch)
|> Permission.permission?(c.commenter, c.patch)
|> if do
Enum.each(cmd_list, &run(c, &1))
else
Expand Down
4 changes: 3 additions & 1 deletion apps/bors_frontend/web/controllers/project_controller.ex
Original file line number Diff line number Diff line change
Expand Up @@ -134,12 +134,14 @@ defmodule BorsNG.ProjectController do
|> put_flash(:ok, "Successfully updated branches")
|> redirect(to: project_path(conn, :settings, project))
{:error, changeset} ->
reviewers = Repo.all(User.by_project(project.id))
reviewers = Permission.list_users_for_project(:reviewer, project.id)
members = Permission.list_users_for_project(:member, project.id)
conn
|> put_flash(:error, "Cannot update branches")
|> render("settings.html",
project: project,
reviewers: reviewers,
members: members,
current_user_id: conn.assigns.user.id,
update_branches: changeset)
end
Expand Down

0 comments on commit 25b09a2

Please sign in to comment.