added test and method create
This commit is contained in:
parent
d62d390300
commit
584c66bcb7
3 changed files with 27 additions and 31 deletions
|
|
@ -14,15 +14,16 @@ class Api::V1::MembershipsController < ApplicationController
|
|||
render json: MembershipSerializer.new(@membership).serializable_hash.to_json
|
||||
end
|
||||
|
||||
# def create
|
||||
# membership = current_user.memberships.build(membership_params)
|
||||
def create
|
||||
membership = current_user.memberships.build(membership_params)
|
||||
membership.team_id = params[:team_id]
|
||||
|
||||
# if membership.save
|
||||
# render json: MembershipSerializer.new(membership).serializable_hash.to_json, status: :created
|
||||
# else
|
||||
# render json: membership.errors, status: :unprocessable_entity
|
||||
# end
|
||||
# end
|
||||
if membership.save
|
||||
render json: MembershipSerializer.new(membership).serializable_hash.to_json, status: :created
|
||||
else
|
||||
render json: membership.errors, status: :unprocessable_entity
|
||||
end
|
||||
end
|
||||
|
||||
def update
|
||||
if params[:membership][:can_edit]
|
||||
|
|
|
|||
|
|
@ -47,25 +47,25 @@ class Api::V1::MembershipsControllerTest < ActionDispatch::IntegrationTest
|
|||
assert_response :forbidden
|
||||
end
|
||||
|
||||
# CREATE
|
||||
# test "should create membership" do
|
||||
# assert_difference("Membership.count") do
|
||||
# post api_v1_memberships_url,
|
||||
# params: { membership: { team_id: @team2.id, member_id: @user2.id, can_edit: false } },
|
||||
# headers: { Authorization: JsonWebToken.encode(user_id: @user.id) },
|
||||
# as: :json
|
||||
# end
|
||||
# assert_response :created
|
||||
# end
|
||||
#CREATE
|
||||
test "should create membership" do
|
||||
assert_difference("Membership.count") do
|
||||
post api_v1_team_memberships_url(@team),
|
||||
params: { membership: { can_edit: false, member_id: @user2, team_id: @team } },
|
||||
headers: { Authorization: JsonWebToken.encode(user_id: @user2.id) },
|
||||
as: :json
|
||||
end
|
||||
assert_response :created
|
||||
end
|
||||
|
||||
# test "should forbid create membership" do
|
||||
# assert_no_difference("Membership.count") do
|
||||
# post api_v1_memberships_url,
|
||||
# params: { membership: { team_id: @team.id, member_id: @user.id, can_edit: false } },
|
||||
# as: :json
|
||||
# end
|
||||
# assert_response :forbidden
|
||||
# end
|
||||
test "should forbid create membership" do
|
||||
assert_no_difference("Membership.count") do
|
||||
post api_v1_team_memberships_url(@team),
|
||||
params: { membership: { can_edit: false } },
|
||||
as: :json
|
||||
end
|
||||
assert_response :forbidden
|
||||
end
|
||||
|
||||
# # UPDATE
|
||||
# test "should update membership" do
|
||||
|
|
|
|||
5
test/fixtures/memberships.yml
vendored
5
test/fixtures/memberships.yml
vendored
|
|
@ -8,8 +8,3 @@ one:
|
|||
team: one
|
||||
member: one
|
||||
can_edit: true
|
||||
|
||||
two:
|
||||
team: one
|
||||
member: two
|
||||
can_edit: false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue