[UI test] Buying module - Get Supplier Quotations (#10375)
* Get quotations for Suppliers * Calculate taxes and charges for Supplier quotations * Added paths for tests * Codacy fix * Improvised the page route function
This commit is contained in:
parent
22baba2cff
commit
67e2ef30c4
@ -0,0 +1,75 @@
|
||||
QUnit.module('Buying');
|
||||
|
||||
QUnit.test("test: supplier quotation", function(assert) {
|
||||
assert.expect(11);
|
||||
let done = assert.async();
|
||||
let date;
|
||||
|
||||
frappe.run_serially([
|
||||
() => {
|
||||
date = frappe.datetime.add_days(frappe.datetime.now_date(), 10);
|
||||
return frappe.tests.make('Supplier Quotation', [
|
||||
{supplier: 'Test Supplier'},
|
||||
{transaction_date: date},
|
||||
{company: 'Wind Power LLC'},
|
||||
{buying_price_list: 'Test-Buying-USD'},
|
||||
{currency: 'USD'},
|
||||
{items: [
|
||||
[
|
||||
{"item_code": 'Test Product 4'},
|
||||
{"qty": 5},
|
||||
{"uom": 'Unit'},
|
||||
{"rate": 200},
|
||||
{"warehouse": 'All Warehouses - WP'}
|
||||
]
|
||||
]},
|
||||
{apply_discount_on: 'Grand Total'},
|
||||
{additional_discount_percentage: 10},
|
||||
{tc_name: 'Test Term 1'},
|
||||
{terms: 'This is a term'}
|
||||
]);
|
||||
},
|
||||
() => {
|
||||
// Get Supplier details
|
||||
assert.ok(cur_frm.doc.supplier == 'Test Supplier', "Supplier correct");
|
||||
assert.ok(cur_frm.doc.company == 'Wind Power LLC', "Company correct");
|
||||
// Get Contact details
|
||||
assert.ok(cur_frm.doc.contact_display == 'Contact 3', "Conatct correct");
|
||||
assert.ok(cur_frm.doc.contact_email == 'test@supplier.com', "Email correct");
|
||||
// Get uom
|
||||
assert.ok(cur_frm.doc.items[0].uom == 'Unit', "Multi uom correct");
|
||||
assert.ok(cur_frm.doc.total == 1000, "Total correct");
|
||||
// Calculate total after discount
|
||||
assert.ok(cur_frm.doc.grand_total == 900, "Grand total correct");
|
||||
// Get terms
|
||||
assert.ok(cur_frm.doc.tc_name == 'Test Term 1', "Terms correct");
|
||||
},
|
||||
|
||||
() => cur_frm.print_doc(),
|
||||
() => frappe.timeout(1),
|
||||
() => {
|
||||
assert.ok($('.btn-print-print').is(':visible'), "Print Format Available");
|
||||
assert.ok($("table > tbody > tr > td:nth-child(3) > div").text().includes("Test Product 4"), "Print Preview Works As Expected");
|
||||
},
|
||||
() => cur_frm.print_doc(),
|
||||
() => frappe.timeout(1),
|
||||
() => frappe.click_button('Get items from'),
|
||||
() => frappe.timeout(0.3),
|
||||
() => frappe.click_link('Material Request'),
|
||||
() => frappe.timeout(0.3),
|
||||
() => frappe.click_button('Get Items'),
|
||||
() => frappe.timeout(1),
|
||||
() => {
|
||||
// Get item from Material Requests
|
||||
assert.ok(cur_frm.doc.items[1].item_name == 'Test Product 1', "Getting items from material requests work");
|
||||
},
|
||||
|
||||
() => cur_frm.save(),
|
||||
() => frappe.timeout(1),
|
||||
() => frappe.tests.click_button('Submit'),
|
||||
() => frappe.tests.click_button('Yes'),
|
||||
() => frappe.timeout(0.3),
|
||||
|
||||
() => done()
|
||||
]);
|
||||
});
|
@ -0,0 +1,62 @@
|
||||
QUnit.module('Buying');
|
||||
|
||||
QUnit.test("test: supplier quotation with taxes and charges", function(assert) {
|
||||
assert.expect(3);
|
||||
let done = assert.async();
|
||||
let supplier_quotation_name;
|
||||
|
||||
frappe.run_serially([
|
||||
() => {
|
||||
return frappe.tests.make('Supplier Quotation', [
|
||||
{supplier: 'Test Supplier'},
|
||||
{items: [
|
||||
[
|
||||
{"item_code": 'Test Product 4'},
|
||||
{"qty": 5},
|
||||
{"rate": 100},
|
||||
{"warehouse": 'Stores - WP'},
|
||||
]
|
||||
]},
|
||||
]);
|
||||
},
|
||||
() => {supplier_quotation_name = cur_frm.doc.name;},
|
||||
() => frappe.set_route('Form', 'Purchase Taxes and Charges Template', 'New Purchase Taxes and Charges Template'),
|
||||
() => frappe.timeout(1),
|
||||
() => {
|
||||
return frappe.tests.set_form_values(cur_frm, [
|
||||
{title:'TEST In State GST'},
|
||||
{taxes: [
|
||||
[
|
||||
{"charge_type": 'On Net Total'},
|
||||
{"account_head": 'CGST - WP'}
|
||||
],
|
||||
[
|
||||
{"charge_type": 'On Net Total'},
|
||||
{"account_head": 'SGST - WP'}
|
||||
]
|
||||
]},
|
||||
]);
|
||||
},
|
||||
() => cur_frm.save(),
|
||||
() => frappe.set_route('Form', 'Supplier Quotation', supplier_quotation_name),
|
||||
() => frappe.timeout(1),
|
||||
() => {
|
||||
return frappe.tests.set_form_values(cur_frm, [
|
||||
{taxes_and_charges:'TEST In State GST'}
|
||||
]);
|
||||
},
|
||||
|
||||
() => {
|
||||
assert.ok(cur_frm.doc.taxes[0].account_head=='CGST - '+frappe.get_abbr(frappe.defaults.get_default('Company')), " Account Head abbr correct");
|
||||
assert.ok(cur_frm.doc.total_taxes_and_charges == 45, "Taxes and charges correct");
|
||||
assert.ok(cur_frm.doc.grand_total == 545, "Grand total correct");
|
||||
},
|
||||
|
||||
() => cur_frm.save(),
|
||||
() => frappe.timeout(0.3),
|
||||
() => frappe.tests.click_button('Submit'),
|
||||
() => frappe.tests.click_button('Yes'),
|
||||
() => frappe.timeout(0.3),
|
||||
() => done()
|
||||
]);
|
||||
});
|
@ -81,3 +81,5 @@ erpnext/schools/doctype/assessment_result/test_assessment_result.js
|
||||
erpnext/schools/doctype/assessment_result_tool/test_assessment_result_tool.js
|
||||
erpnext/buying/doctype/supplier/test_supplier.js
|
||||
erpnext/buying/doctype/request_for_quotation/test_request_for_quotation.js
|
||||
erpnext/buying/doctype/supplier_quotation/tests/test_supplier_quotation.js
|
||||
erpnext/buying/doctype/supplier_quotation/tests/test_supplier_quotation_for_taxes_and_charges.js
|
Loading…
x
Reference in New Issue
Block a user