summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/fields/relational_fields_tests.js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/tests/fields/relational_fields_tests.js')
-rw-r--r--addons/web/static/tests/fields/relational_fields_tests.js380
1 files changed, 189 insertions, 191 deletions
diff --git a/addons/web/static/tests/fields/relational_fields_tests.js b/addons/web/static/tests/fields/relational_fields_tests.js
index d6ea4a946be..db81e19731c 100644
--- a/addons/web/static/tests/fields/relational_fields_tests.js
+++ b/addons/web/static/tests/fields/relational_fields_tests.js
@@ -259,9 +259,9 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- var $dropdown = form.$('.o_form_field_many2one input').autocomplete('widget');
+ var $dropdown = form.$('.o_field_many2one input').autocomplete('widget');
- form.$('.o_form_field_many2one input').click();
+ form.$('.o_field_many2one input').click();
assert.ok($dropdown.is(':visible'),
'clicking on the m2o input should open the dropdown if it is not open yet');
assert.strictEqual($dropdown.find('li:not(.o_m2o_dropdown_option)').length, 7,
@@ -269,19 +269,19 @@ QUnit.module('relational_fields', {
assert.strictEqual($dropdown.find('li.o_m2o_dropdown_option').length, 2,
'autocomplete should contain "Search More" and Create and Edit..."');
- form.$('.o_form_field_many2one input').click();
+ form.$('.o_field_many2one input').click();
assert.ok(!$dropdown.is(':visible'),
'clicking on the m2o input should close the dropdown if it is open');
// change the value of the m2o with a suggestion of the dropdown
- form.$('.o_form_field_many2one input').click();
+ form.$('.o_field_many2one input').click();
$dropdown.find('li:first()').click();
assert.ok(!$dropdown.is(':visible'), 'clicking on a value should close the dropdown');
- assert.strictEqual(form.$('.o_form_field_many2one input').val(), 'first record',
+ assert.strictEqual(form.$('.o_field_many2one input').val(), 'first record',
'value of the m2o should have been correctly updated');
// change the value of the m2o with a record in the 'Search More' modal
- form.$('.o_form_field_many2one input').click();
+ form.$('.o_field_many2one input').click();
// click on 'Search More' (mouseenter required by ui-autocomplete)
$dropdown.find('.o_m2o_dropdown_option:contains(Search)').mouseenter().click();
assert.ok($('.modal .o_list_view').length, "should have opened a list view in a modal");
@@ -299,7 +299,7 @@ QUnit.module('relational_fields', {
$('.modal tbody tr:contains(Partner 20)').click(); // choose record 'Partner 20'
assert.ok(!$('.modal').length, "should have closed the modal");
assert.ok(!$dropdown.is(':visible'), 'should have closed the dropdown');
- assert.strictEqual(form.$('.o_form_field_many2one input').val(), 'Partner 20',
+ assert.strictEqual(form.$('.o_field_many2one input').val(), 'Partner 20',
'value of the m2o should have been correctly updated');
// save
@@ -479,8 +479,8 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('a').text(), '', 'the tag a should be empty');
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_many2one input').click();
- form.$('.o_form_field_many2one input').autocomplete('widget').find('a').first().click();
+ form.$('.o_field_many2one input').click();
+ form.$('.o_field_many2one input').autocomplete('widget').find('a').first().click();
assert.strictEqual(form.$('input').val(), "xphone", "should have selected xphone");
@@ -549,8 +549,8 @@ QUnit.module('relational_fields', {
},
});
- form.$('.o_form_field_many2one input').focus();
- form.$('.o_form_field_many2one input').val('new partner').trigger('keyup').trigger('focusout');
+ form.$('.o_field_many2one input').focus();
+ form.$('.o_field_many2one input').val('new partner').trigger('keyup').trigger('focusout');
$('.modal .modal-footer .btn-primary').first().click();
@@ -571,8 +571,8 @@ QUnit.module('relational_fields', {
'</form>',
});
- form.$('.o_form_field_many2one input').focus();
- form.$('.o_form_field_many2one input').val('new partner').trigger('keyup').trigger('focusout');
+ form.$('.o_field_many2one input').focus();
+ form.$('.o_field_many2one input').val('new partner').trigger('keyup').trigger('focusout');
assert.strictEqual($('.modal').length, 0, "should not display the create modal");
form.destroy();
@@ -607,17 +607,17 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('td.o_list_record_selector').length, 0,
"embedded one2many should not have a selector");
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
"embedded one2many should not be editable");
assert.ok(!form.$('td.o_list_record_delete').length,
"embedded one2many records should not have a trash icon");
form.$buttons.find('.o_form_button_edit').click();
- assert.ok(form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(form.$('.o_field_x2many_list_row_add').length,
"embedded one2many should now be editable");
- assert.strictEqual(form.$('.o_form_field_x2many_list_row_add').attr('colspan'), "2",
+ assert.strictEqual(form.$('.o_field_x2many_list_row_add').attr('colspan'), "2",
"should have colspan 2 (one for field foo, one for being below trash icon)");
assert.ok(form.$('td.o_list_record_delete').length,
@@ -934,12 +934,12 @@ QUnit.module('relational_fields', {
res_id: 1,
});
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should not be available in readonly');
form.$buttons.find('.o_form_button_edit').click();
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should not be available in readonly');
form.destroy();
});
@@ -1027,7 +1027,7 @@ QUnit.module('relational_fields', {
assert.ok(!form.$('.o_kanban_view .delete_icon').length,
'delete icon should not be visible in readonly');
- assert.ok(!form.$('.o_form_field_one2many .o-kanban-button-new').length,
+ assert.ok(!form.$('.o_field_one2many .o-kanban-button-new').length,
'"Create" button should not be visible in readonly');
form.$buttons.find('.o_form_button_edit').click();
@@ -1040,20 +1040,20 @@ QUnit.module('relational_fields', {
'color of subrecord should be the one in DB');
assert.ok(form.$('.o_kanban_view .delete_icon').length,
'delete icon should be visible in edit');
- assert.ok(form.$('.o_form_field_one2many .o-kanban-button-new').length,
+ assert.ok(form.$('.o_field_one2many .o-kanban-button-new').length,
'"Create" button should be visible in edit');
// edit existing subrecord
form.$('.oe_kanban_global_click').click();
- $('.modal .o_form_view .o_form_input').val('new name').trigger('input');
+ $('.modal .o_form_view input').val('new name').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save
assert.strictEqual(form.$('.o_kanban_record span:first').text(), 'new name',
'value of subrecord should have been updated');
// create a new subrecord
form.$('.o-kanban-button-new').click();
- $('.modal .o_form_view .o_form_input').val('new subrecord 1').trigger('input');
+ $('.modal .o_form_view input').val('new subrecord 1').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save and close
assert.strictEqual(form.$('.o_kanban_record:not(.o_kanban_ghost)').length, 2,
'should contain 2 records');
@@ -1062,9 +1062,9 @@ QUnit.module('relational_fields', {
// create two new subrecords
form.$('.o-kanban-button-new').click();
- $('.modal .o_form_view .o_form_input').val('new subrecord 2').trigger('input');
+ $('.modal .o_form_view input').val('new subrecord 2').trigger('input');
$('.modal .modal-footer .btn-primary:nth(1)').click(); // save and new
- $('.modal .o_form_view .o_form_input').val('new subrecord 3').trigger('input');
+ $('.modal .o_form_view input').val('new subrecord 3').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save and close
assert.strictEqual(form.$('.o_kanban_record:not(.o_kanban_ghost)').length, 4,
'should contain 4 records');
@@ -1153,7 +1153,7 @@ QUnit.module('relational_fields', {
assert.ok(!form.$('.o_list_record_delete').length,
'delete icon should not be visible in readonly');
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should not be visible in readonly');
form.$buttons.find('.o_form_button_edit').click();
@@ -1164,13 +1164,13 @@ QUnit.module('relational_fields', {
'display_name of first subrecord should be the one in DB');
assert.ok(form.$('.o_list_record_delete').length,
'delete icon should be visible in edit');
- assert.ok(form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should not visible in edit');
// edit existing subrecord
form.$('.o_list_view tbody tr:first() td:eq(1)').click();
- $('.modal .o_form_view .o_form_input').val('new name').trigger('input');
+ $('.modal .o_form_view input').val('new name').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save
assert.strictEqual(form.$('.o_list_view tbody td:first()').text(), 'new name',
'value of subrecord should have been updated');
@@ -1213,7 +1213,7 @@ QUnit.module('relational_fields', {
res_id: 1,
});
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should not be available in readonly');
form.$('.o_list_view tbody td:first()').click();
@@ -1223,7 +1223,7 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- assert.ok(form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should be available in edit');
// edit existing subrecord
@@ -1232,7 +1232,7 @@ QUnit.module('relational_fields', {
'in edit, clicking on a subrecord should not open a dialog');
assert.ok(form.$('.o_list_view tbody tr:first()').hasClass('o_selected_row'),
'first row should be in edition');
- form.$('.o_list_view .o_form_input:first()').val('new name').trigger('input');
+ form.$('.o_list_view input:first()').val('new name').trigger('input');
form.$('.o_list_view tbody tr:nth(1) td:first').click(); // click on second record to validate the first one
assert.ok(!form.$('.o_list_view tbody tr:first').hasClass('o_selected_row'),
@@ -1273,11 +1273,11 @@ QUnit.module('relational_fields', {
// edit mode, then click on Add an item and enter a value
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
form.$('.o_selected_row > td input').val('kartoffel').trigger('input');
// click again on Add an item
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('td:contains(kartoffel)').length, 1,
"should have one td with the new value");
assert.strictEqual(form.$('.o_selected_row > td input').length, 1,
@@ -1319,8 +1319,8 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('tr.o_data_row').length, 1,
"should have 1 data rows");
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('tr.o_data_row').length, 3,
"should have 3 data rows");
@@ -1365,14 +1365,14 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should have 0 data rows");
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('textarea').val(), "",
"field turtle_description should be empty");
// add a value in the turtle_trululu field to trigger an onchange
- var $dropdown = form.$('.o_form_field_many2one[name=turtle_trululu] input')
+ var $dropdown = form.$('.o_field_many2one[name=turtle_trululu] input')
.autocomplete('widget');
- form.$('.o_form_field_many2one[name=turtle_trululu] input').click();
+ form.$('.o_field_many2one[name=turtle_trululu] input').click();
$dropdown.find('a:contains(first record)').mouseenter().click();
assert.strictEqual(form.$('textarea').val(), "Some Description",
"field turtle_description should be set to the result of the onchange");
@@ -1411,13 +1411,13 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should have 0 data rows");
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
form.$('label.o_form_label').first().click();
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should still have 0 data rows");
// click on Add an item again, then click on save
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
form.$buttons.find('.o_form_button_save').click();
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should still have 0 data rows");
@@ -1453,7 +1453,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should have 0 data rows");
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('tr.o_data_row').length, 1,
"should have 1 data rows");
@@ -1518,7 +1518,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('tr.o_data_row').length, 0,
"should have 0 data rows");
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
// input some text in required turtle_foo field
form.$('input[name="turtle_foo"]').val('aubergine').trigger('input');
@@ -1718,10 +1718,10 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- assert.ok(form.$('.o_list_view tbody tr:eq(0) td:first').hasClass('o_readonly'),
+ assert.ok(form.$('.o_list_view tbody tr:eq(0) td:first').hasClass('o_readonly_modifier'),
"first record should have display_name in readonly mode");
- assert.notOk(form.$('.o_list_view tbody tr:eq(1) td:first').hasClass('o_readonly'),
+ assert.notOk(form.$('.o_list_view tbody tr:eq(1) td:first').hasClass('o_readonly_modifier'),
"second record should not have display_name in readonly mode");
form.destroy();
});
@@ -1752,8 +1752,8 @@ QUnit.module('relational_fields', {
'o2m pager should be hidden');
// click to create a subrecord
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
- $('.modal .o_form_input').val('new record').trigger('input');
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
+ $('.modal input').val('new record').trigger('input');
$('.modal .modal-footer button:eq(0)').click(); // save and close
assert.ok(!form.$('.o_x2m_control_panel .o_cp_pager div').is(':visible'),
@@ -1807,11 +1807,11 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
- $('.modal .o_form_field_many2one input').click();
+ $('.modal .o_field_many2one input').click();
- var $dropdown = $('.modal .o_form_field_many2one input').autocomplete('widget');
+ var $dropdown = $('.modal .o_field_many2one input').autocomplete('widget');
$dropdown.find('li:eq(1) a').mouseenter();
$dropdown.find('li:eq(1) a').click();
@@ -1865,11 +1865,11 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
// write in the many2one field, value = 37 (xphone)
- $('.modal .o_form_field_many2one input').click();
- var $dropdown = $('.modal .o_form_field_many2one input').autocomplete('widget');
+ $('.modal .o_field_many2one input').click();
+ var $dropdown = $('.modal .o_field_many2one input').autocomplete('widget');
$dropdown.find('li:eq(0) a').mouseenter();
$dropdown.find('li:eq(0) a').click();
@@ -1900,8 +1900,8 @@ QUnit.module('relational_fields', {
"should display 123 (previous change has been discarded)");
// write in the many2one field, value = 41 (xpad)
- $('.modal .o_form_field_many2one input').click();
- $dropdown = $('.modal .o_form_field_many2one input').autocomplete('widget');
+ $('.modal .o_field_many2one input').click();
+ $dropdown = $('.modal .o_field_many2one input').autocomplete('widget');
$dropdown.find('li:eq(1) a').mouseenter();
$dropdown.find('li:eq(1) a').click();
@@ -1956,7 +1956,7 @@ QUnit.module('relational_fields', {
form.$('tr.o_data_row:eq(0) td:contains(xphone)').click();
// write in the many2one field
- $('.modal .o_form_field_many2one input').click();
+ $('.modal .o_field_many2one input').click();
form.destroy();
});
@@ -1994,7 +1994,7 @@ QUnit.module('relational_fields', {
form.$('tr.o_data_row:eq(0) td:contains(xphone)').click();
// trigger a name search
- form.$('table td input.o_form_input').click();
+ form.$('table td input').click();
form.destroy();
});
@@ -2030,7 +2030,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
form.destroy();
});
@@ -2055,17 +2055,17 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
- assert.strictEqual(form.$('td input.o_field_widget.o_form_input').length, 1,
+ assert.strictEqual(form.$('td input.o_field_widget').length, 1,
"should have created a row in edit mode");
- form.$('td input.o_field_widget.o_form_input').val('a').trigger('input');
+ form.$('td input.o_field_widget').val('a').trigger('input');
- assert.strictEqual(form.$('td input.o_field_widget.o_form_input').length, 1,
+ assert.strictEqual(form.$('td input.o_field_widget').length, 1,
"should not have unselected the row after edition");
- form.$('td input.o_field_widget.o_form_input').val('abc').trigger('input');
+ form.$('td input.o_field_widget').val('abc').trigger('input');
form.$buttons.find('.o_form_button_save').click();
assert.strictEqual(form.$('td:contains(abc)').length, 1,
@@ -2100,7 +2100,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
form.destroy();
});
@@ -2148,7 +2148,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual($('.modal .o_data_row').length, 2,
"sould have 2 records in the select view (the last one is not displayed because it is already selected)");
@@ -2157,14 +2157,14 @@ QUnit.module('relational_fields', {
$('.modal .o_select_button').click();
$('.o_form_button_save').click();
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual($('.modal .o_data_row').length, 1,
"sould have 1 record in the select view");
$('.modal-footer button:eq(1)').click();
- $('.modal input.o_form_field[name="turtle_foo"]').val('tototo').trigger('input');
- $('.modal input.o_form_field[name="turtle_int"]').val(50).trigger('input');
+ $('.modal input.o_field_widget[name="turtle_foo"]').val('tototo').trigger('input');
+ $('.modal input.o_field_widget[name="turtle_int"]').val(50).trigger('input');
var $many2one = $('.modal [name="product_id"] input').click();
var $dropdown = $many2one.autocomplete('widget');
$dropdown.find('li:first a').mouseenter();
@@ -2245,7 +2245,7 @@ QUnit.module('relational_fields', {
// add a one2many record
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
$('.modal .o_data_row:first .o_list_record_selector input').click();
$('.modal .o_select_button').click();
@@ -2294,7 +2294,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
form.destroy();
});
@@ -2326,7 +2326,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
form.destroy();
});
@@ -2357,7 +2357,7 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
form.destroy();
});
@@ -2384,11 +2384,11 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- form.$('tbody td.o_form_field_x2many_list_row_add a').click();
+ form.$('tbody td.o_field_x2many_list_row_add a').click();
$('.modal-footer button.btn-primary').first().click();
assert.strictEqual($('.modal').length, 1, "should still have an open modal");
- assert.strictEqual($('.modal tbody label.o_form_invalid').length, 1,
+ assert.strictEqual($('.modal tbody label.o_field_invalid').length, 1,
"should have displayed invalid fields");
form.destroy();
});
@@ -2539,7 +2539,7 @@ QUnit.module('relational_fields', {
}
});
- assert.strictEqual(form.$('.o_form_field[name="turtles"] .o_list_view').length, 1,
+ assert.strictEqual(form.$('.o_field_widget[name="turtles"] .o_list_view').length, 1,
'should display one2many list view in the modal');
assert.strictEqual(form.$('.o_data_row').length, 2,
@@ -2603,7 +2603,7 @@ QUnit.module('relational_fields', {
form.$('.o_data_row:first').click();
- assert.strictEqual($('.modal .o_form_field').text(), "xphone",
+ assert.strictEqual($('.modal .o_field_widget').text(), "xphone",
'should display the form view dialog with the many2one value');
$('.modal-footer button').click(); // close the modal
@@ -2612,21 +2612,21 @@ QUnit.module('relational_fields', {
// edit the m2m of first row
form.$('.o_list_view tbody td:first()').click();
// remove a tag
- form.$('.o_form_field_many2manytags .badge:contains(aaa) .o_delete').click();
- assert.strictEqual(form.$('.o_selected_row .o_form_field_many2manytags .o_badge_text:contains(aaa)').length, 0,
+ form.$('.o_field_many2manytags .badge:contains(aaa) .o_delete').click();
+ assert.strictEqual(form.$('.o_selected_row .o_field_many2manytags .o_badge_text:contains(aaa)').length, 0,
"tag should have been correctly removed");
// add a tag
- var $m2mInput = form.$('.o_selected_row .o_form_field_many2manytags input');
+ var $m2mInput = form.$('.o_selected_row .o_field_many2manytags input');
$m2mInput.click();
$m2mInput.autocomplete('widget').find('li:first()').click();
- assert.strictEqual(form.$('.o_selected_row .o_form_field_many2manytags .o_badge_text:contains(first record)').length, 1,
+ assert.strictEqual(form.$('.o_selected_row .o_field_many2manytags .o_badge_text:contains(first record)').length, 1,
"tag should have been correctly added");
// edit the m2o of first row
- var $m2oInput = form.$('.o_selected_row .o_form_field_many2one:first input');
+ var $m2oInput = form.$('.o_selected_row .o_field_many2one:first input');
$m2oInput.click();
$m2oInput.autocomplete('widget').find('li:contains(xpad)').mouseover().click();
- assert.strictEqual(form.$('.o_selected_row .o_form_field_many2one:first input').val(), 'xpad',
+ assert.strictEqual(form.$('.o_selected_row .o_field_many2one:first input').val(), 'xpad',
"m2o value should have been updated");
// save (should correctly generate the commands)
@@ -2673,7 +2673,7 @@ QUnit.module('relational_fields', {
form.$('.o_data_row:first').click();
- assert.strictEqual($('.modal .o_form_field[name="partner_ids"] .o_list_view').length, 1,
+ assert.strictEqual($('.modal .o_field_widget[name="partner_ids"] .o_list_view').length, 1,
'should display many2many list view in the modal');
form.destroy();
@@ -2705,7 +2705,7 @@ QUnit.module('relational_fields', {
form.$('.o_data_row:first').click();
- assert.strictEqual($('.modal .o_form_field[name="turtle_foo"]').text(), 'blip',
+ assert.strictEqual($('.modal .o_field_widget[name="turtle_foo"]').text(), 'blip',
'should open the modal and display the form field');
form.destroy();
@@ -2737,7 +2737,7 @@ QUnit.module('relational_fields', {
form.$('.o_data_row:first').click();
- assert.strictEqual($('.modal .o_form_field[name="turtle_foo"]').text(), 'blip',
+ assert.strictEqual($('.modal .o_field_widget[name="turtle_foo"]').text(), 'blip',
'should open the modal and display the form field');
form.destroy();
@@ -2784,38 +2784,38 @@ QUnit.module('relational_fields', {
res_id: 4,
});
- assert.strictEqual(form.$('.o_form_field .o_kanban_view').length, 1,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view').length, 1,
"should have one inner kanban view for the one2many field");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 0,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 0,
"should not have kanban records yet");
// // switch to edit mode and create a new kanban record
form.$buttons.find('.o_form_button_edit').click();
- form.$('.o_form_field .o-kanban-button-new').click();
+ form.$('.o_field_widget .o-kanban-button-new').click();
// save & close the modal
- assert.strictEqual($('.modal-content input.o_form_field').val(), 'My little Foo Value',
+ assert.strictEqual($('.modal-content input.o_field_widget').val(), 'My little Foo Value',
"should already have the default value for field foo");
$('.modal-content .btn-primary').first().click();
- assert.strictEqual(form.$('.o_form_field .o_kanban_view').length, 1,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view').length, 1,
"should have one inner kanban view for the one2many field");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 1,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 1,
"should now have one kanban record");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_id').text(),
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_id').text(),
'', "should not have a value for the id field");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_foo').text(),
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_foo').text(),
'My little Foo Value', "should have a value for the foo field");
// save the view to force a create of the new record in the one2many
form.$buttons.find('.o_form_button_save').click();
- assert.strictEqual(form.$('.o_form_field .o_kanban_view').length, 1,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view').length, 1,
"should have one inner kanban view for the one2many field");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 1,
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost)').length, 1,
"should now have one kanban record");
- assert.notEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_id').text(),
+ assert.notEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_id').text(),
'', "should now have a value for the id field");
- assert.strictEqual(form.$('.o_form_field .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_foo').text(),
+ assert.strictEqual(form.$('.o_field_widget .o_kanban_view .o_kanban_record:not(.o_kanban_ghost) .o_test_foo').text(),
'My little Foo Value', "should still have a value for the foo field");
form.destroy();
@@ -2844,11 +2844,11 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
form.$('.o_data_row:first td:first').click();
- assert.strictEqual(form.$('.o_form_input[name="turtle_foo"]')[0], document.activeElement,
+ assert.strictEqual(form.$('input[name="turtle_foo"]')[0], document.activeElement,
"turtle foo field should have focus");
- form.$('.o_form_input[name="turtle_foo"]').trigger({type: 'keydown', which: $.ui.keyCode.TAB});
- assert.strictEqual(form.$('.o_form_input[name="turtle_int"]')[0], document.activeElement,
+ form.$('input[name="turtle_foo"]').trigger({type: 'keydown', which: $.ui.keyCode.TAB});
+ assert.strictEqual(form.$('input[name="turtle_int"]')[0], document.activeElement,
"turtle int field should have focus");
form.destroy();
});
@@ -2887,7 +2887,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('.o_data_row').length, 1,
"should start with one data row");
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('.o_data_row').length, 2,
"should have 2 data rows");
@@ -2934,7 +2934,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('.o_data_row').length, 1,
"should start with one data row");
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
assert.strictEqual(form.$('.o_data_row').length, 2,
"should have 2 data rows");
@@ -2975,7 +2975,7 @@ QUnit.module('relational_fields', {
res_id: 1,
});
- assert.strictEqual(form.$('.o_form_field_one2many .o_kanban_view').length, 1,
+ assert.strictEqual(form.$('.o_field_one2many .o_kanban_view').length, 1,
"should have rendered a kanban view");
form.destroy();
@@ -3014,16 +3014,16 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "0",
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "0",
"int_field should start with value 0");
- form.$('.o_form_field_x2many_list_row_add a').click();
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "0",
+ form.$('.o_field_x2many_list_row_add a').click();
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "0",
"int_field should still be 0 (no onchange should have been done yet");
assert.verifySteps(['read', 'default_get'], "no onchange should have been applied");
form.$('.o_field_widget[name="turtle_foo"]').val("some text").trigger('input');
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "1",
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "1",
"int_field should now be 1 (the onchange should have been done");
form.destroy();
@@ -3066,16 +3066,16 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "0",
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "0",
"int_field should start with value 0");
- form.$('.o_form_field_x2many_list_row_add a').click();
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "0",
+ form.$('.o_field_x2many_list_row_add a').click();
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "0",
"int_field should still be 0 (no onchange should have been done yet");
assert.verifySteps(['read', 'default_get'], "no onchange should have been applied");
form.$('.o_field_widget[name="turtle_foo"]').val("some text").trigger('input');
- assert.strictEqual(form.$('.o_form_field[name="int_field"]').val(), "1",
+ assert.strictEqual(form.$('.o_field_widget[name="int_field"]').val(), "1",
"int_field should now be 1 (the onchange should have been done");
form.destroy();
@@ -3152,7 +3152,7 @@ QUnit.module('relational_fields', {
assert.ok(!form.$('.o_kanban_view .delete_icon').length,
'delete icon should not be visible in readonly');
- assert.ok(!form.$('.o_form_field_many2many .o-kanban-button-new').length,
+ assert.ok(!form.$('.o_field_many2many .o-kanban-button-new').length,
'"Add" button should not be visible in readonly');
form.$buttons.find('.o_form_button_edit').click();
@@ -3163,20 +3163,20 @@ QUnit.module('relational_fields', {
'display_name of subrecord should be the one in DB');
assert.ok(form.$('.o_kanban_view .delete_icon').length,
'delete icon should be visible in edit');
- assert.ok(form.$('.o_form_field_many2many .o-kanban-button-new').length,
+ assert.ok(form.$('.o_field_many2many .o-kanban-button-new').length,
'"Add" button should be visible in edit');
// edit existing subrecord
form.$('.oe_kanban_global_click:first()').click();
- $('.modal .o_form_view .o_form_input').val('new name').trigger('input');
+ $('.modal .o_form_view input').val('new name').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save
assert.strictEqual(form.$('.o_kanban_record:first() span').text(), 'new name',
'value of subrecord should have been updated');
// add subrecords
// -> single select
- form.$('.o_form_field_many2many .o-kanban-button-new').click();
+ form.$('.o_field_many2many .o-kanban-button-new').click();
assert.ok($('.modal .o_list_view').length, "should have opened a list view in a modal");
assert.strictEqual($('.modal .o_list_view tbody .o_list_record_selector').length, 3,
"list view should contain 3 records");
@@ -3188,7 +3188,7 @@ QUnit.module('relational_fields', {
'record "red" should be in the kanban');
// -> multiple select
- form.$('.o_form_field_many2many .o-kanban-button-new').click();
+ form.$('.o_field_many2many .o-kanban-button-new').click();
assert.ok($('.modal .o_select_button').prop('disabled'), "select button should be disabled");
assert.strictEqual($('.modal .o_list_view tbody .o_list_record_selector').length, 2,
"list view should contain 2 records");
@@ -3199,7 +3199,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('.o_kanban_record:not(.o_kanban_ghost)').length, 5,
'kanban should now contain 5 records');
// -> created record
- form.$('.o_form_field_many2many .o-kanban-button-new').click();
+ form.$('.o_field_many2many .o-kanban-button-new').click();
$('.modal .modal-footer .btn-primary:nth(1)').click(); // click on 'Create'
assert.ok($('.modal .o_form_view.o_form_editable').length,
"should have opened a form view in edit mode, in a modal");
@@ -3297,7 +3297,7 @@ QUnit.module('relational_fields', {
assert.ok(!form.$('.o_list_record_delete').length,
'delete icon should not be visible in readonly');
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should not be visible in readonly');
form.$buttons.find('.o_form_button_edit').click();
@@ -3308,13 +3308,13 @@ QUnit.module('relational_fields', {
'display_name of first subrecord should be the one in DB');
assert.ok(form.$('.o_list_record_delete').length,
'delete icon should be visible in edit');
- assert.ok(form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should be visible in edit');
// edit existing subrecord
form.$('.o_list_view tbody tr:first()').click();
- $('.modal .o_form_view .o_form_input').val('new name').trigger('input');
+ $('.modal .o_form_view input').val('new name').trigger('input');
$('.modal .modal-footer .btn-primary').click(); // save
assert.strictEqual(form.$('.o_list_view tbody td:first()').text(), 'new name',
'value of subrecord should have been updated');
@@ -3355,7 +3355,7 @@ QUnit.module('relational_fields', {
assert.ok(!form.$('.o_list_record_delete').length,
'delete icon should not be visible in readonly');
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should not be visible in readonly');
form.$buttons.find('.o_form_button_edit').click();
@@ -3366,7 +3366,7 @@ QUnit.module('relational_fields', {
'display_name of first subrecord should be the one in DB');
assert.ok(form.$('.o_list_record_delete').length,
'delete icon should be visible in edit');
- assert.ok(form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(form.$('.o_field_x2many_list_row_add').length,
'"Add an item" should not visible in edit');
// edit existing subrecord
@@ -3375,7 +3375,7 @@ QUnit.module('relational_fields', {
'in edit, clicking on a subrecord should not open a dialog');
assert.ok(form.$('.o_list_view tbody tr:first()').hasClass('o_selected_row'),
'first row should be in edition');
- form.$('.o_list_view .o_form_input:first()').val('new name').trigger('input');
+ form.$('.o_list_view input:first()').val('new name').trigger('input');
// FIXME: this doesn"t work for now as the x2many fields are reset on field changed
// form.$('.o_list_view tbody td:nth(1)').click(); // click on second record to validate the first one
// assert.ok(!form.$('.o_list_view tbody tr:first()').hasClass('o_selected_row'),
@@ -3416,7 +3416,7 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field_x2many_list_row_add').length, 1, "should have the 'Add an item' link");
+ assert.strictEqual(form.$('.o_field_x2many_list_row_add').length, 1, "should have the 'Add an item' link");
assert.strictEqual(form.$('.o_list_record_delete').length, 2, "should have the 'Add an item' link");
form.destroy();
@@ -3437,7 +3437,7 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field_x2many_list_row_add').length, 0, "should not have the 'Add an item' link");
+ assert.strictEqual(form.$('.o_field_x2many_list_row_add').length, 0, "should not have the 'Add an item' link");
assert.strictEqual(form.$('.o_list_record_delete').length, 0, "should not have the 'Add an item' link");
form.destroy();
@@ -3459,12 +3459,12 @@ QUnit.module('relational_fields', {
res_id: 1,
});
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should not be available in readonly');
form.$buttons.find('.o_form_button_edit').click();
- assert.ok(!form.$('.o_form_field_x2many_list_row_add').length,
+ assert.ok(!form.$('.o_field_x2many_list_row_add').length,
'"Add an item" link should not be available in edit either');
form.destroy();
@@ -3508,7 +3508,7 @@ QUnit.module('relational_fields', {
},
});
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
$('.modal .o_data_row:first').click(); // add a first record to the relation
assert.strictEqual(form.$('.o_data_row').length, 1,
@@ -3516,7 +3516,7 @@ QUnit.module('relational_fields', {
assert.strictEqual(form.$('.o_data_row:first .o_badge_text').text(), 'leonardodonatello',
"inner m2m should have been fetched and correctly displayed");
- form.$('.o_form_field_x2many_list_row_add a').click();
+ form.$('.o_field_x2many_list_row_add a').click();
$('.modal .o_data_row:first').click(); // add a second record to the relation
assert.strictEqual(form.$('.o_data_row').length, 2,
@@ -3658,8 +3658,8 @@ QUnit.module('relational_fields', {
},
});
- assert.ok(form.$('.o_statusbar_status').hasClass('o_form_field_empty'),
- 'statusbar widget should have class o_form_field_empty');
+ assert.ok(form.$('.o_statusbar_status').hasClass('o_field_empty'),
+ 'statusbar widget should have class o_field_empty');
assert.strictEqual(form.$('.o_statusbar_status').children().length, 0,
'statusbar widget should be empty');
form.destroy();
@@ -3896,7 +3896,7 @@ QUnit.module('relational_fields', {
return this._super.apply(this, arguments);
},
});
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 2,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 2,
"should contain 2 tags");
assert.ok(form.$('span:contains(gold)').length,
'should have fetched and rendered gold partner tag');
@@ -3907,33 +3907,33 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 2,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 2,
"should still contain 2 tags in edit mode");
assert.ok(form.$('.o_tag_color_2 .o_badge_text:contains(gold)').length,
'first tag should still contain "gold" and be color 2 in edit mode');
- assert.strictEqual(form.$('.o_form_field_many2manytags .o_delete').length, 2,
+ assert.strictEqual(form.$('.o_field_many2manytags .o_delete').length, 2,
"tags should contain a delete button");
// add an other existing tag
- var $input = form.$('.o_form_field_many2manytags input');
+ var $input = form.$('.o_field_many2manytags input');
$input.click(); // opens the dropdown
assert.strictEqual($input.autocomplete('widget').find('li').length, 1,
"autocomplete dropdown should have 1 entry");
assert.strictEqual($input.autocomplete('widget').find('li a:contains("red")').length, 1,
"autocomplete dropdown should contain 'red'");
$input.autocomplete('widget').find('li').click(); // add 'red'
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 3,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 3,
"should contain 3 tags");
- assert.ok(form.$('.o_form_field_many2manytags > span:contains("red")').length,
+ assert.ok(form.$('.o_field_many2manytags > span:contains("red")').length,
"should contain newly added tag 'red'");
- assert.ok(form.$('.o_form_field_many2manytags > span[data-color=8]:contains("red")').length,
+ assert.ok(form.$('.o_field_many2manytags > span[data-color=8]:contains("red")').length,
"should have fetched the color of added tag");
// remove tag with id 14
- form.$('.o_form_field_many2manytags span[data-id=14] .o_delete').click();
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 2,
+ form.$('.o_field_many2manytags span[data-id=14] .o_delete').click();
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 2,
"should contain 2 tags");
- assert.ok(!form.$('.o_form_field_many2manytags > span:contains("silver")').length,
+ assert.ok(!form.$('.o_field_many2manytags > span:contains("silver")').length,
"should not contain tag 'silver' anymore");
// save the record (should do the write RPC with the correct commands)
@@ -3969,7 +3969,7 @@ QUnit.module('relational_fields', {
return this._super.apply(this, arguments);
}
});
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 1,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 1,
"should contain 1 tag");
assert.ok(form.$('span:contains(gold)').length,
'should have fetched and rendered gold partner tag');
@@ -3977,16 +3977,16 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_edit').click();
// add an other existing tag
- var $input = form.$('.o_form_field_many2manytags input');
+ var $input = form.$('.o_field_many2manytags input');
$input.click(); // opens the dropdown
assert.strictEqual($input.autocomplete('widget').find('li').length, 1,
"autocomplete dropdown should have 1 entry");
assert.strictEqual($input.autocomplete('widget').find('li a:contains("silver")').length, 1,
"autocomplete dropdown should contain 'silver'");
$input.autocomplete('widget').find('li').click(); // add 'silver'
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 2,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 2,
"should contain 2 tags");
- assert.ok(form.$('.o_form_field_many2manytags > span:contains("silver")').length,
+ assert.ok(form.$('.o_field_many2manytags > span:contains("silver")').length,
"should contain newly added tag 'silver'");
form.destroy();
@@ -4014,14 +4014,14 @@ QUnit.module('relational_fields', {
});
assert.ok(form.$('.o_form_view').hasClass('o_form_editable'), "form should be in edit mode");
- var $input = form.$('.o_form_field_many2manytags input');
+ var $input = form.$('.o_field_many2manytags input');
$input.click(); // opens the dropdown
assert.strictEqual($input.autocomplete('widget').find('li').length, 3,
"autocomplete dropdown should have 3 entries (2 values + 'Search and Edit...')");
$input.autocomplete('widget').find('li:first()').click(); // adds a tag
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 1,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 1,
"should contain 1 tag");
- assert.ok(form.$('.o_form_field_many2manytags > span:contains("gold")').length,
+ assert.ok(form.$('.o_field_many2manytags > span:contains("gold")').length,
"should contain newly added tag 'gold'");
// save the record (should do the write RPC with the correct commands)
@@ -4059,7 +4059,7 @@ QUnit.module('relational_fields', {
});
QUnit.test('fieldmany2many tags in editable list', function (assert) {
- assert.expect(5);
+ assert.expect(4);
this.data.partner.records[0].timmy = [12];
@@ -4073,13 +4073,13 @@ QUnit.module('relational_fields', {
'</tree>',
});
- assert.strictEqual(list.$('.o_data_row:first .o_form_field_many2manytags .badge').length, 1,
+ assert.strictEqual(list.$('.o_data_row:first .o_field_many2manytags .badge').length, 1,
"m2m field should contain one tag");
// edit first row
list.$('.o_data_row:first td:nth(2)').click();
- var $m2o = list.$('.o_data_row:first .o_form_field_many2manytags .o_form_field_many2one');
+ var $m2o = list.$('.o_data_row:first .o_field_many2manytags .o_field_many2one');
assert.strictEqual($m2o.length, 1, "a many2one widget should have been instantiated");
// add a tag
@@ -4087,15 +4087,13 @@ QUnit.module('relational_fields', {
$input.click();
$input.autocomplete('widget').find('li:first()').click(); // adds a tag
- assert.strictEqual(list.$('.o_data_row:first .o_form_field_many2manytags .badge').length, 2,
+ assert.strictEqual(list.$('.o_data_row:first .o_field_many2manytags .badge').length, 2,
"m2m field should contain 2 tags");
- assert.ok(list.$('.o_data_row:first .o_many2many_tags_cell').hasClass('o_field_dirty'),
- "edited cell should have class o_field_dirty");
// leave edition
list.$('.o_data_row:nth(1) td:nth(2)').click();
- assert.strictEqual(list.$('.o_data_row:first .o_form_field_many2manytags .badge').length, 2,
+ assert.strictEqual(list.$('.o_data_row:first .o_field_many2manytags .badge').length, 2,
"m2m field should contain 2 tags");
list.destroy();
@@ -4121,31 +4119,31 @@ QUnit.module('relational_fields', {
});
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 1,
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 1,
"should contain one tag");
// update foo, which will trigger an onchange and update timmy
// -> m2mtags input should not have taken the focus
- form.$('.o_form_input:first').focus();
- form.$('.o_form_input:first').val('trigger onchange').trigger('input');
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 0,
+ form.$('input:first').focus();
+ form.$('input:first').val('trigger onchange').trigger('input');
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 0,
"should contain no tags");
- assert.strictEqual(form.$('.o_form_input:first').get(0), document.activeElement,
+ assert.strictEqual(form.$('input:first').get(0), document.activeElement,
"foo input should have kept the focus");
// add a tag -> m2mtags input should still have the focus
- form.$('.o_form_field_many2manytags input').click(); // opens the dropdown
- form.$('.o_form_field_many2manytags input').autocomplete('widget').find('li:first').click();
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 1,
+ form.$('.o_field_many2manytags input').click(); // opens the dropdown
+ form.$('.o_field_many2manytags input').autocomplete('widget').find('li:first').click();
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 1,
"should contain a tag");
- assert.strictEqual(form.$('.o_form_field_many2manytags input').get(0), document.activeElement,
+ assert.strictEqual(form.$('.o_field_many2manytags input').get(0), document.activeElement,
"m2m tags input should have kept the focus");
// remove a tag -> m2mtags input should still have the focus
- form.$('.o_form_field_many2manytags .o_delete').click();
- assert.strictEqual(form.$('.o_form_field_many2manytags > span').length, 0,
+ form.$('.o_field_many2manytags .o_delete').click();
+ assert.strictEqual(form.$('.o_field_many2manytags > span').length, 0,
"should contain no tags");
- assert.strictEqual(form.$('.o_form_field_many2manytags input').get(0), document.activeElement,
+ assert.strictEqual(form.$('.o_field_many2manytags input').get(0), document.activeElement,
"m2m tags input should have kept the focus");
form.destroy();
@@ -4166,11 +4164,11 @@ QUnit.module('relational_fields', {
});
assert.ok(form.$('div.o_radio_item').length, "should have rendered outer div");
- assert.strictEqual(form.$('input.o_form_radio').length, 2, "should have 2 possible choices");
+ assert.strictEqual(form.$('input.o_radio_input').length, 2, "should have 2 possible choices");
assert.ok(form.$('label.o_form_label:contains(xphone)').length, "one of them should be xphone");
assert.strictEqual(form.$('input:checked').length, 0, "none of the input should be checked");
- form.$("input.o_form_radio:first").click();
+ form.$("input.o_radio_input:first").click();
assert.strictEqual(form.$('input:checked').length, 1, "one of the input should be checked");
@@ -4201,11 +4199,11 @@ QUnit.module('relational_fields', {
});
form.$("input[type='checkbox']").click();
- assert.strictEqual(form.$('input.o_form_radio[data-value="37"]:checked').length, 1, "one of the input should be checked");
- assert.strictEqual(form.$('input.o_form_radio[data-value="black"]:checked').length, 1, "the other of the input should be checked");
+ assert.strictEqual(form.$('input.o_radio_input[data-value="37"]:checked').length, 1, "one of the input should be checked");
+ assert.strictEqual(form.$('input.o_radio_input[data-value="black"]:checked').length, 1, "the other of the input should be checked");
form.$("input[type='checkbox']").click();
- assert.strictEqual(form.$('input.o_form_radio[data-value="41"]:checked').length, 1, "the other of the input should be checked");
- assert.strictEqual(form.$('input.o_form_radio[data-value="red"]:checked').length, 1, "one of the input should be checked");
+ assert.strictEqual(form.$('input.o_radio_input[data-value="41"]:checked').length, 1, "the other of the input should be checked");
+ assert.strictEqual(form.$('input.o_radio_input[data-value="red"]:checked').length, 1, "one of the input should be checked");
form.destroy();
});
@@ -4225,11 +4223,11 @@ QUnit.module('relational_fields', {
assert.ok(form.$('div.o_radio_item').length, "should have rendered outer div");
- assert.strictEqual(form.$('input.o_form_radio').length, 2, "should have 2 possible choices");
+ assert.strictEqual(form.$('input.o_radio_input').length, 2, "should have 2 possible choices");
assert.ok(form.$('label.o_form_label:contains(Red)').length, "one of them should be Red");
// click on 2nd option
- form.$("input.o_form_radio").eq(1).click();
+ form.$("input.o_radio_input").eq(1).click();
form.$buttons.find('.o_form_button_save').click();
@@ -4254,24 +4252,24 @@ QUnit.module('relational_fields', {
res_id: 1,
});
- assert.strictEqual(form.$('div.o_form_field div.o_checkbox').length, 2,
+ assert.strictEqual(form.$('div.o_field_widget div.o_checkbox').length, 2,
"should have fetched and displayed the 2 values of the many2many");
- assert.ok(form.$('div.o_form_field div.o_checkbox input').eq(0).prop('checked'),
+ assert.ok(form.$('div.o_field_widget div.o_checkbox input').eq(0).prop('checked'),
"first checkbox should be checked");
- assert.notOk(form.$('div.o_form_field div.o_checkbox input').eq(1).prop('checked'),
+ assert.notOk(form.$('div.o_field_widget div.o_checkbox input').eq(1).prop('checked'),
"second checkbox should not be checked");
- assert.ok(form.$('div.o_form_field div.o_checkbox input').prop('disabled'),
+ assert.ok(form.$('div.o_field_widget div.o_checkbox input').prop('disabled'),
"the checkboxes should be disabled");
form.$buttons.find('.o_form_button_edit').click();
- assert.notOk(form.$('div.o_form_field div.o_checkbox input').prop('disabled'),
+ assert.notOk(form.$('div.o_field_widget div.o_checkbox input').prop('disabled'),
"the checkboxes should not be disabled");
// add a m2m value
- form.$('div.o_form_field div.o_checkbox input').eq(1).click();
+ form.$('div.o_field_widget div.o_checkbox input').eq(1).click();
form.$buttons.find('.o_form_button_save').click();
assert.deepEqual(this.data.partner.records[0].timmy, [12, 14],
"should have added the second element to the many2many");
@@ -4280,13 +4278,13 @@ QUnit.module('relational_fields', {
// remove a m2m value
form.$buttons.find('.o_form_button_edit').click();
- form.$('div.o_form_field div.o_checkbox input').eq(0).click();
+ form.$('div.o_field_widget div.o_checkbox input').eq(0).click();
form.$buttons.find('.o_form_button_save').click();
assert.deepEqual(this.data.partner.records[0].timmy, [14],
"should have removed the first element to the many2many");
- assert.notOk(form.$('div.o_form_field div.o_checkbox input').eq(0).prop('checked'),
+ assert.notOk(form.$('div.o_field_widget div.o_checkbox input').eq(0).prop('checked'),
"first checkbox should be checked");
- assert.ok(form.$('div.o_form_field div.o_checkbox input').eq(1).prop('checked'),
+ assert.ok(form.$('div.o_field_widget div.o_checkbox input').eq(1).prop('checked'),
"second checkbox should not be checked");
form.destroy();
@@ -4334,29 +4332,29 @@ QUnit.module('relational_fields', {
},
});
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload').length, 1,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload').length, 1,
"there should be the attachment widget");
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .oe_attachments').children().length, 1,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .oe_attachments').children().length, 1,
"there should be no attachment");
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .o_attach').length, 0,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .o_attach').length, 0,
"there should not be an Add button (readonly)");
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .oe_attachment .oe_delete').length, 0,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .oe_attachment .oe_delete').length, 0,
"there should not be a Delete button (readonly)");
// to edit mode
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .o_attach').length, 1,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .o_attach').length, 1,
"there should be an Add button");
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .o_attach').text().trim(), "Pictures",
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .o_attach').text().trim(), "Pictures",
"the button should be correctly named");
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .o_hidden_input_file form').length, 1,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .o_hidden_input_file form').length, 1,
"there should be a hidden form to upload attachments");
// TODO: add an attachment
// no idea how to test this
// delete the attachment
- form.$('div.o_form_field.oe_fileupload .oe_attachment .oe_delete').click();
+ form.$('div.o_field_widget.oe_fileupload .oe_attachment .oe_delete').click();
assert.verifySteps([
@@ -4366,7 +4364,7 @@ QUnit.module('relational_fields', {
form.$buttons.find('.o_form_button_save').click();
- assert.strictEqual(form.$('div.o_form_field.oe_fileupload .oe_attachments').children().length, 0,
+ assert.strictEqual(form.$('div.o_field_widget.oe_fileupload .oe_attachments').children().length, 0,
"there should be no attachment");
form.destroy();