[IMP] base: generic Edit View menu item text in debug mode

With this commit, the menu item for editing a view in debug mode has been
changed.

Instead of "Edit List View", it is now "Edit View: List".

That way, the code is shorter, generic, and translatable.

Exception to above changes: search view, which is unchanged
(it remains "Edit Searchview")
This commit is contained in:
Alexandre Kühn
2018-04-10 17:41:12 +02:00
committed by Géry Debongnie
parent 270dd268bf
commit 4f6f562c97
3 changed files with 73 additions and 8 deletions
+1 -8
View File
@@ -264,14 +264,7 @@
<t t-if="can_edit">
<li>
<a href="#" data-action="edit" data-model="ir.ui.view" t-att-data-id="view.fieldsView.view_id">
<t t-if="view.type == 'form'">Edit Form view</t>
<t t-elif="view.type == 'list'">Edit List view</t>
<t t-elif="view.type == 'kanban'">Edit Kanban view</t>
<t t-elif="view.type == 'graph'">Edit Graph view</t>
<t t-elif="view.type == 'gantt'">Edit Gantt view</t>
<t t-elif="view.type == 'pivot'">Edit Pivot view</t>
<t t-elif="view.type == 'calendar'">Edit Calendar view</t>
<t t-else="1">Edit view, type: <t t-esc="_.str.capitalize(view.type)"/></t>
Edit View: <t t-esc="_.str.capitalize(view.type)"/>
</a>
</li>
<li t-if="searchview and searchview.$el.is(':visible')"><a href="#" data-action="edit" data-model="ir.ui.view" t-att-data-id="action.searchFieldsView.view_id">Edit SearchView</a></li>
@@ -0,0 +1,71 @@
odoo.define('web.debugManagerTests', function (require) {
"use strict";
var DebugManager = require('web.DebugManager');
var testUtils = require('web.test_utils');
/**
* Create and return an instance of DebugManager with all rpcs going through a
* mock method, assuming that the user has access rights, and is an admin.
*
* @param {Object} [params={}]
*/
var createDebugManager = function (params) {
params = params || {};
_.extend(params, {
mockRPC: function (route, args) {
if (args.method === 'check_access_rights') {
return $.when(true);
}
if (args.method === 'xmlid_to_res_id') {
return $.when(true);
}
return this._super.apply(this, arguments);
},
session: {
user_has_group: function (group) {
if (group === 'base.group_no_one') {
return $.when(true);
}
return this._super.apply(this, arguments);
},
},
});
var debugManager = new DebugManager();
testUtils.addMockEnvironment(debugManager, params);
return debugManager;
};
QUnit.module('DebugManager', {}, function () {
QUnit.test("edit view menu item", function (assert) {
assert.expect(3);
var debugManager = createDebugManager();
debugManager.appendTo($('#qunit-fixture'));
// Simulate update debug manager from web client
var action = {
views: [{
fieldsView: {
view_id: 1,
},
type: "list",
}],
};
var view = {
viewType: "list",
};
debugManager.update('action', action, view);
var $editView = debugManager.$('a[data-action=edit][data-model="ir.ui.view"]');
assert.strictEqual($editView.length, 1, "should have edit view menu item");
assert.strictEqual($editView.text().trim(), "Edit View: List",
"should have correct menu item text for editing view");
assert.strictEqual($editView.data('id'), 1, "should have correct view_id");
debugManager.destroy();
});
});
});
+1
View File
@@ -509,6 +509,7 @@
<script type="text/javascript" src="/web/static/tests/chrome/pager_tests.js"></script>
<script type="text/javascript" src="/web/static/tests/widgets/data_export_tests.js"/>
<script type="text/javascript" src="/web/static/tests/widgets/debug_manager_tests.js"/>
<script type="text/javascript" src="/web/static/tests/widgets/domain_selector_tests.js"/>
<script type="text/javascript" src="/web/static/tests/widgets/model_field_selector_tests.js"/>
<script type="text/javascript" src="/web/static/tests/widgets/rainbow_man_tests.js"/>