Adds def create and test units, must fix a test

This commit is contained in:
Lou 2021-05-10 21:34:13 +02:00
commit bfda3e561b
6 changed files with 47 additions and 5 deletions

View file

@ -51,7 +51,7 @@ class Api::V1::ActivitiesControllerTest < ActionDispatch::IntegrationTest
test "should create activity" do
assert_difference("Activity.count") do
post api_v1_activities_url,
params: { activity: { name: @activity.name, client: @activity.client, description: @activity.description, author_id: @user }},
params: { activity: { name: @activity.name, client: @activity.client, description: @activity.description, author_id: @user } },
headers: { Authorization: JsonWebToken.encode(user_id: @activity.author_id) },
as: :json
end

View file

@ -34,4 +34,34 @@ class Api::V1::TasksControllerTest < ActionDispatch::IntegrationTest
as: :json
assert_response :forbidden
end
# CREATE
test "should create task" do
assert_difference("Task.count") do
post api_v1_activity_tasks_url(@activity),
params: { task: { name: @task.name, description: @task.description, user_id: @user, activity_id: @activity } },
headers: { Authorization: JsonWebToken.encode(user_id: @user.id) },
as: :json
end
assert_response :created
end
test "should forbid create task - not logged in" do
assert_no_difference("Task.count") do
post api_v1_activity_tasks_url(@activity),
params: { task: { name: @task.name, description: @task.description, user_id: @user, activity_id: @activity } },
as: :json
end
assert_response :forbidden
end
test "should forbid create task - missing user or activity id" do
assert_no_difference("Task.count") do
post api_v1_activity_tasks_url(@activity),
params: { task: { name: @task.name, description: @task.description } },
headers: { Authorization: JsonWebToken.encode(user_id: @user.id) },
as: :json
end
assert_response :forbidden
end
end