Add feature spec to validate load all and select all exchange products

This commit is contained in:
luisramos0
2019-11-26 14:41:22 +00:00
parent a039ef13f4
commit a104bf8efd

View File

@@ -522,6 +522,45 @@ feature '
expect(page).not_to have_selector 'table.exchanges tr.supplier'
end
describe "editing an order cycle with multiple pages of products", js: true do
let(:order_cycle) { create(:order_cycle) }
let(:supplier_enterprise) { order_cycle.exchanges.incoming.first.sender }
let!(:new_product) { create(:product, supplier: supplier_enterprise) }
before do
stub_const("Api::ExchangeProductsController::DEFAULT_PER_PAGE", 1)
quick_login_as_admin
visit admin_order_cycle_incoming_path(order_cycle)
expect(page).to have_content "1 / 2 selected"
page.find("tr.supplier-#{supplier_enterprise.id} td.products").click
expect(page).to have_selector ".exchange-product-details"
expect(page).to have_content "1 of 2 Products Loaded"
expect(page).to_not have_content new_product.name
end
scenario "load all products" do
page.find(".exchange-load-all-variants a").click
expect_all_products_loaded
end
scenario "select all products" do
check "order_cycle_incoming_exchange_0_select_all_variants"
expect_all_products_loaded
expect(page).to have_checked_field "order_cycle_incoming_exchange_0_variants_#{new_product.variants.first.id}", disabled: false
end
def expect_all_products_loaded
expect(page).to have_content new_product.name.upcase
expect(page).to have_content "2 of 2 Products Loaded"
end
end
scenario "updating many order cycle opening/closing times at once", js: true do
# Given three order cycles
oc1 = create(:simple_order_cycle)