From b73ca88811aa3f3e8498873b004595a9b27675f2 Mon Sep 17 00:00:00 2001 From: luisramos0 Date: Wed, 20 Feb 2019 16:35:31 +0000 Subject: [PATCH] Fix edit ship method and tracking number in backoffice order page The data-hook is necessary to make spree js code work, in this case, activate click events on edit and save buttons --- app/views/spree/admin/orders/edit.html.haml | 2 +- spec/features/admin/orders_spec.rb | 24 +++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/app/views/spree/admin/orders/edit.html.haml b/app/views/spree/admin/orders/edit.html.haml index 854f074d17..42cc281ce4 100644 --- a/app/views/spree/admin/orders/edit.html.haml +++ b/app/views/spree/admin/orders/edit.html.haml @@ -26,7 +26,7 @@ .no-objects-found = Spree.t(:your_order_is_empty_add_product) - %div + %div{"data-hook" => "admin_order_edit_form"} = render :partial => 'form', :locals => { :order => @order } - content_for :head do diff --git a/spec/features/admin/orders_spec.rb b/spec/features/admin/orders_spec.rb index f0f55f7166..ea501020d7 100644 --- a/spec/features/admin/orders_spec.rb +++ b/spec/features/admin/orders_spec.rb @@ -221,6 +221,8 @@ feature %q{ end feature "viewing the edit page" do + let!(:different_shipping_method) { create(:shipping_method, name: "Different Shipping Method") } + background do Spree::Config[:enable_receipt_printing?] = true @@ -283,6 +285,28 @@ feature %q{ end end + scenario "can edit shipping method" do + expect(page).to_not have_content different_shipping_method.name + + find('.edit-method').click + expect(page).to have_select2 'selected_shipping_rate_id', with_options: [different_shipping_method.name] + select2_select different_shipping_method.name, from: 'selected_shipping_rate_id' + find('.save-method').click + + expect(page).to have_content different_shipping_method.name + end + + scenario "can edit tracking number" do + test_tracking_number = "ABCCBA" + expect(page).to_not have_content test_tracking_number + + find('.edit-tracking').click + fill_in "tracking", with: test_tracking_number + find('.save-tracking').click + + expect(page).to have_content test_tracking_number + end + scenario "can print an order's ticket" do find("#links-dropdown .ofn-drop-down").click