Skip to content

Commit

Permalink
Add actions on appoinments show (#467)
Browse files Browse the repository at this point in the history
  • Loading branch information
JuanVqz authored Mar 1, 2024
1 parent 5e982f6 commit e16a8da
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 18 deletions.
13 changes: 8 additions & 5 deletions app/views/appoinments/show.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,18 @@
= link_to :appoinments, class: secondary_button do
%span.fa.fa-arrow-left
%span= t('.back')
= link_to edit_appoinment_path(@appoinment), 'data-tooltip': t('tooltips.defaults.edit'), class: "#{secondary_button} tooltip tooltip-top" do
= link_to edit_appoinment_path(@appoinment), data: { tooltip: t('tooltips.defaults.edit') }, class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-edit.text-yellow-600
%span= t('tooltips.defaults.edit')
= link_to appoinment_path(@appoinment, format: :pdf), 'data-tooltip': t('tooltips.defaults.print'), class: "#{secondary_button} tooltip tooltip-top", target: :_blank do
= link_to appoinment_path(@appoinment, format: :pdf), data: { tooltip: t('tooltips.defaults.print') }, class: "#{secondary_button} tooltip tooltip-top", target: :_blank do
%span.fa.fa-print.text-red-600
%span= t('tooltips.defaults.print')
= link_to @appoinment.patient, 'data-tooltip': t('tooltips.defaults.patient'), class: "#{secondary_button} tooltip tooltip-top", target: :_blank do
%span.fa.fa-user
%span= t('tooltips.defaults.patient')
= link_to new_appoinment_path(patient_id: @appoinment.patient_id), data: { tooltip: t('tooltips.appoinments.new') }, class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-book
%span= t('tooltips.appoinments.new')
= link_to new_hospitalization_path(patient_id: @appoinment.patient_id), data: { tooltip: t('tooltips.hospitalizations.new') }, class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-ambulance
%span= t('tooltips.hospitalizations.new')


= render 'shared/section' do
Expand Down
1 change: 1 addition & 0 deletions app/views/patients/appoinments.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
= t('.back')
= link_to new_appoinment_path(patient_id: @patient.id), 'data-tooltip': t('tooltips.appoinments.new'), class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-book
= t('tooltips.appoinments.new')

= render 'shared/section' do
= render 'shared/table' do
Expand Down
2 changes: 0 additions & 2 deletions app/views/patients/index.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,5 @@
%span.fa.fa-book
= link_to new_hospitalization_path(patient_id: patient.id), 'data-tooltip': t('tooltips.hospitalizations.new'), class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-ambulance
= link_to appoinments_patient_path(id: patient.id), 'data-tooltip': t('tooltips.defaults.appoinments'), class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-folder-open
= link_to patient, 'data-tooltip': t('tooltips.defaults.details'), class: "#{secondary_button} tooltip tooltip-top" do
%span.fa.fa-eye.text-sky-600
28 changes: 25 additions & 3 deletions spec/system/appoinments_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
driven_by(:headless_firefox)
end

feature "Doctor creates an appoinment" do
scenario "from the show page" do
feature "Doctor" do
scenario "creates an appoinment from the show page" do
create_hospital_plan_medium
sign_in_admin_doctor @hospital
@patient = create(:patient)
Expand All @@ -25,7 +25,7 @@
expect(page).to have_content "CONSULTA ##{Appoinment.last.id}"
end

scenario "for the correct patient even when the name is almost the same" do
scenario "creates an appoinment for the correct patient even when the name is almost the same" do
create_hospital_plan_medium
sign_in_admin_doctor @hospital

Expand All @@ -49,6 +49,28 @@
expect(page).to have_content @other_patient
end
end

scenario "can action some pages", js: true do
create_hospital_plan_medium
sign_in_admin_doctor @hospital
patient = create(:patient, doctors: [@admin])
appoinment = create(:appoinment, patient: patient, doctor: @admin)

visit appoinments_path(appoinment)
find('a[data-tooltip="Editar"]').click
expect(page).to have_content "ACTUALIZAR CONSULTA"
expect(find("#appoinment_patient_id").value).to eq patient.to_param

visit appoinment_path(appoinment)
find('a[data-tooltip="Nueva Consulta"]').click
expect(page).to have_content "REGISTRAR CONSULTA"
expect(find("#appoinment_patient_id").value).to eq patient.to_param

visit appoinment_path(appoinment)
find('a[data-tooltip="Nueva Hospitalización"]').click
expect(page).to have_content "REGISTRAR HOSPITALIZACIÓN"
expect(find("#hospitalization_patient_id").value).to eq patient.to_param
end
end

def fill_up_appoinment_form(patient_id)
Expand Down
14 changes: 6 additions & 8 deletions spec/system/patients_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -81,15 +81,13 @@
scenario "can see the patient's appoinments history" do
create_hospital_plan_medium
sign_in_admin_doctor @hospital
@patient = create(:patient, doctors: [@admin])
@appoinments = create_list(:appoinment, 3, doctor: @admin, patient: @patient)
patient = create(:patient, doctors: [@admin])
create_list(:appoinment, 3, doctor: @admin, patient: patient)

visit patients_path
expect(page).to have_content "Buscar"
within "tr", text: @patient do
find('a[data-tooltip="Consultas"]').click
end
expect(page).to have_content @patient, count: 3
visit patient_path(patient)
expect(page).to have_content "DATOS GENERALES"
find('a[data-tooltip="Consultas"]').click
expect(page).to have_content patient, count: 3
end
end

Expand Down

0 comments on commit e16a8da

Please sign in to comment.