Browse Source

Merge pull request #508 from StefanRijnhart/9.0-database_cleanup_fix_tests_access_denied

[RFR] Explicit access rights so that tests can run
pull/505/merge
Alexandre Fayolle 8 years ago
committed by GitHub
parent
commit
d04280870b
  1. 7
      .travis.yml
  2. 3
      database_cleanup/README.rst
  3. 8
      database_cleanup/models/purge_wizard.py
  4. 1
      database_cleanup/views/menu.xml

7
.travis.yml

@ -21,9 +21,10 @@ env:
matrix:
- LINT_CHECK="1"
- TRANSIFEX="1"
- TESTS="1" ODOO_REPO="odoo/odoo"
- TESTS="1" ODOO_REPO="OCA/OCB"
- UNIT_TEST="1"
- TESTS="1" ODOO_REPO="odoo/odoo" EXCLUDE=database_cleanup
- TESTS="1" ODOO_REPO="OCA/OCB" EXCLUDE=database_cleanup
- TESTS="1" ODOO_REPO="odoo/odoo" INCLUDE=database_cleanup
- TESTS="1" ODOO_REPO="OCA/OCB" INCLUDE=database_cleanup
virtualenv:
system_site_packages: true

3
database_cleanup/README.rst

@ -20,7 +20,8 @@ Usage
=====
After installation of this module, go to the Settings menu -> Technical ->
Database cleanup. Go through the modules, models, columns and tables
Database cleanup. This menu is only available to members of the *Access Rights*
group. Go through the modules, models, columns and tables
entries under this menu (in that order) and find out if there is orphaned data
in your database. You can either delete entries by line, or sweep all entries
in one big step (if you are *really* confident).

8
database_cleanup/models/purge_wizard.py

@ -24,8 +24,8 @@ class CleanupPurgeLine(models.AbstractModel):
@api.model
def create(self, values):
# make sure the user trying this is actually supposed to do it
if not self.env.ref('database_cleanup.menu_database_cleanup')\
.parent_id._filter_visible_menus():
if self.env.ref(
'base.group_erp_manager') not in self.env.user.groups_id:
raise AccessDenied
return super(CleanupPurgeLine, self).create(values)
@ -86,8 +86,8 @@ class PurgeWizard(models.AbstractModel):
@api.model
def create(self, values):
# make sure the user trying this is actually supposed to do it
if not self.env.ref('database_cleanup.menu_database_cleanup')\
.parent_id._filter_visible_menus():
if self.env.ref(
'base.group_erp_manager') not in self.env.user.groups_id:
raise AccessDenied
return super(PurgeWizard, self).create(values)

1
database_cleanup/views/menu.xml

@ -7,6 +7,7 @@
<field name="sequence" eval="10" />
<!-- attach to Settings -> Technical -->
<field name="parent_id" ref="base.menu_custom"/>
<field name="groups_id" eval="[(6,0, [ref('base.group_erp_manager')])]"/>
</record>
<record model="ir.ui.menu" id="menu_purge_modules">

Loading…
Cancel
Save