diff --git a/app/views/admin/task_requests/_task_request.html.erb b/app/views/admin/task_requests/_task_request.html.erb index cdc777e..9a4c489 100644 --- a/app/views/admin/task_requests/_task_request.html.erb +++ b/app/views/admin/task_requests/_task_request.html.erb @@ -2,6 +2,12 @@ <%= task_request.id %> + + <%= task_request.project.account.name %> + + + <%= task_request.project.name %> + <%= task_request.created_at.strftime("%D") %> diff --git a/app/views/admin/task_requests/index.html.erb b/app/views/admin/task_requests/index.html.erb index bc445da..8afe67f 100644 --- a/app/views/admin/task_requests/index.html.erb +++ b/app/views/admin/task_requests/index.html.erb @@ -3,6 +3,8 @@ Task ID + Account Name + Project Name Created On Deadline Time Allowed @@ -15,7 +17,7 @@ <%= render @task_requests %> <% else %> - <%= t(".empty") %> + <%= t(".empty") %> <% end %> diff --git a/spec/features/admin_managing_task_requests_spec.rb b/spec/features/admin_managing_task_requests_spec.rb new file mode 100644 index 0000000..d305ff4 --- /dev/null +++ b/spec/features/admin_managing_task_requests_spec.rb @@ -0,0 +1,48 @@ +require "rails_helper" + +feature "Admin managing task requests" do + let(:current_user) { create(:user, admin: true, email: "user@test.com") } + let(:project) { create(:project, account: current_user.primary_account, name: "Test Project") } + + before do + sign_in current_user + end + + scenario "task requests table is visible" do + visit admin_task_requests_path + + expect(page).to have_content "Task ID" + expect(page).to have_content "Account Name" + expect(page).to have_content "Project Name" + expect(page).to have_content "Created On" + expect(page).to have_content "Deadline" + expect(page).to have_content "Time Allowed" + expect(page).to have_content "Status" + end + + scenario "sees list of task requests" do + visit admin_task_requests_path + + expect(page).to have_content no_task_requests_label + + task_request = create(:task_request) + + visit admin_task_requests_path + + expect(page).not_to have_content no_task_requests_label + + expect(page).to have_content task_request.id + expect(page).to have_content task_request.project.account.name + expect(page).to have_content task_request.project.name + expect(page).to have_content task_request.created_at.try(:strftime, '%D') + expect(page).to have_content task_request.deadline.try(:strftime, '%D') + expect(page).to have_content task_request.time_allowed + expect(page).to have_content task_request.status.capitalize + end + + private + + def no_task_requests_label + "Task requests will appear here" + end +end