test: Add test to check if field is editable
This commit is contained in:
parent
4f477cbc94
commit
a8b3a6b20b
3 changed files with 108 additions and 0 deletions
51
cypress/fixtures/custom_submittable_doctype.js
Normal file
51
cypress/fixtures/custom_submittable_doctype.js
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
export default {
|
||||
name: 'Custom Submittable Doctype',
|
||||
custom: 1,
|
||||
actions: [],
|
||||
is_submittable: 1,
|
||||
creation: '2019-12-10 06:29:07.215072',
|
||||
doctype: 'DocType',
|
||||
editable_grid: 1,
|
||||
engine: 'InnoDB',
|
||||
fields: [
|
||||
{
|
||||
fieldname: 'enabled',
|
||||
fieldtype: 'Check',
|
||||
label: 'Enabled',
|
||||
allow_on_submit: 1,
|
||||
reqd: 1
|
||||
},
|
||||
{
|
||||
fieldname: 'title',
|
||||
fieldtype: 'Data',
|
||||
label: 'title',
|
||||
reqd: 1
|
||||
},
|
||||
{
|
||||
fieldname: 'description',
|
||||
fieldtype: 'Text Editor',
|
||||
label: 'Description'
|
||||
}
|
||||
],
|
||||
links: [],
|
||||
modified: '2019-12-10 14:40:53.127615',
|
||||
modified_by: 'Administrator',
|
||||
module: 'Custom',
|
||||
owner: 'Administrator',
|
||||
permissions: [
|
||||
{
|
||||
create: 1,
|
||||
delete: 1,
|
||||
email: 1,
|
||||
print: 1,
|
||||
read: 1,
|
||||
role: 'System Manager',
|
||||
share: 1,
|
||||
write: 1
|
||||
}
|
||||
],
|
||||
quick_entry: 1,
|
||||
sort_field: 'modified',
|
||||
sort_order: 'ASC',
|
||||
track_changes: 1
|
||||
};
|
||||
29
cypress/integration/report_view.js
Normal file
29
cypress/integration/report_view.js
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
import custom_submittable_doctype from '../fixtures/custom_submittable_doctype';
|
||||
const doctype_name = custom_submittable_doctype.name;
|
||||
|
||||
context('Report View', () => {
|
||||
before(() => {
|
||||
cy.login();
|
||||
cy.visit('/desk');
|
||||
cy.insert_doc('DocType', custom_submittable_doctype, true);
|
||||
cy.insert_doc(doctype_name, {
|
||||
'title': 'Doc 1',
|
||||
'description': 'Random Text',
|
||||
'enabled': 0,
|
||||
// submit document
|
||||
'docstatus': 1
|
||||
}, true);
|
||||
|
||||
});
|
||||
it('Field with enabled allow_on_edit should be editable.', () => {
|
||||
cy.server();
|
||||
cy.route('POST', 'api/method/frappe.client.set_value').as('value-update');
|
||||
cy.visit(`/desk#List/${doctype_name}/Report`);
|
||||
let cell = cy.get('.dt-row-0 > .dt-cell--col-3');
|
||||
// select the cell
|
||||
cell.dblclick();
|
||||
cell.find('input[data-fieldname="enabled"]').check({force: true});
|
||||
cy.get('.dt-row-0 > .dt-cell--col-4').click();
|
||||
cy.wait('@value-update');
|
||||
});
|
||||
});
|
||||
|
|
@ -183,3 +183,31 @@ Cypress.Commands.add('hide_dialog', () => {
|
|||
cy.get_open_dialog().find('.btn-modal-close').click();
|
||||
cy.get('.modal:visible').should('not.exist');
|
||||
});
|
||||
|
||||
Cypress.Commands.add('insert_doc', (doctype, args, ignore_duplicate) => {
|
||||
return cy
|
||||
.window()
|
||||
.its('frappe.csrf_token')
|
||||
.then(csrf_token => {
|
||||
return cy
|
||||
.request({
|
||||
method: 'POST',
|
||||
url: `/api/resource/${doctype}`,
|
||||
body: args,
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
'Content-Type': 'application/json',
|
||||
'X-Frappe-CSRF-Token': csrf_token
|
||||
},
|
||||
failOnStatusCode: !ignore_duplicate
|
||||
})
|
||||
.then(res => {
|
||||
let status_codes = [200];
|
||||
if (ignore_duplicate) {
|
||||
status_codes.push(409);
|
||||
}
|
||||
expect(res.status).to.be.oneOf(status_codes);
|
||||
return res.body;
|
||||
});
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Reference in a new issue