Skip to content

Commit

Permalink
try to fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
archetipo committed Oct 4, 2016
1 parent 178396c commit d417165
Show file tree
Hide file tree
Showing 16 changed files with 149 additions and 152 deletions.
22 changes: 11 additions & 11 deletions anybox/recipe/odoo/runtime/session.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
DEFAULT_VERSION_FILE = 'VERSION.txt'


class OpenERPVersion(Version):
class OdooVersion(Version):
"""Odoo idea of version, wrapped in a class.
This is based on :meth:`odoo.tools.parse_version`, and
Expand All @@ -38,7 +38,7 @@ class OpenERPVersion(Version):
"""

def parse(self, incoming):
if isinstance(incoming, OpenERPVersion):
if isinstance(incoming, OdooVersion):
self.vstring = incoming.vstring
self.components = incoming.components
else:
Expand All @@ -49,7 +49,7 @@ def __str__(self):
return self.vstring

def __repr__(self):
return 'OpenERPVersion(%r)' % str(self)
return 'OdooVersion(%r)' % str(self)

def __cmp__(self, other):
if isinstance(other, tuple):
Expand Down Expand Up @@ -190,7 +190,7 @@ def init_environments(self):
See :class:``openerp.api.Environment`` for explanations about
environments.
For OpenERP/Odoo versions prior to the new style API merge, this
For Odoo/Odoo versions prior to the new style API merge, this
is a no-op.
This thread-local ``environments`` is initialized and cleaned with
Expand Down Expand Up @@ -269,7 +269,7 @@ def parse_version_string(self, vstring):
for applications whose life started before this set of utilities has
been used : this helps building an usable default.
"""
return OpenERPVersion(vstring)
return OdooVersion(vstring)

@property
def db_version(self):
Expand All @@ -291,15 +291,15 @@ def db_version(self):
# restoring sanity ASAP
db_version = None
else:
db_version = OpenERPVersion(db_version)
db_version = OdooVersion(db_version)
self._db_version = db_version
return db_version

@db_version.setter
def db_version(self, version):
self.env['ir.config_parameter'].set_param(
self._version_parameter_name, str(version))
self._db_version = OpenERPVersion(version)
self._db_version = OdooVersion(version)

@property
def package_version(self):
Expand All @@ -318,7 +318,7 @@ def package_version(self):
line = line.split('#', 1)[0].strip()
if not line:
continue
self._pkg_version = OpenERPVersion(line)
self._pkg_version = OdooVersion(line)
return self._pkg_version
except IOError:
logger.info("No version file could be read, "
Expand All @@ -336,7 +336,7 @@ def init_cursor(self):
if db is None: # current trunk (future v8)
self.cr = self._registry.cursor()
else:
# In OpenERP < 8, Registry.cursor() object is
# In Odoo < 8, Registry.cursor() object is
# a context manager providing auto closing,
# but we don't want to control the whole lifespan
# of the cursor.
Expand All @@ -356,7 +356,7 @@ def rollback(self):
def is_cursor_closed(self):
"""Compatibility wrapper.
On OpenERP 7, the attribute is ``__closed`` but can't even be accessed
On Odoo 7, the attribute is ``__closed`` but can't even be accessed
if the cursor is closed (``OperationalError`` is raised systematically
in ``sql_db``)
Expand All @@ -378,7 +378,7 @@ def close(self):
self.cr.close()
self.clean_environments()
# GR: I did check that implementation is designed not to fail
# on Odoo 8 and OpenERP 7
# on Odoo 8 and Odoo 7
odoo.modules.registry.RegistryManager.delete(dbname)

def update_modules(self, modules, db=None):
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
# flake8: noqa
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-TODAY OpenERP S.A. <http://www.openerp.com>
# Odoo, Open Source Management Solution
# Copyright (C) 2004-TODAY Odoo S.A. <http://www.openerp.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
Expand Down Expand Up @@ -31,12 +31,12 @@
# properly comparable using normal operarors, for example:
# (6,1,0,'beta',0) < (6,1,0,'candidate',1) < (6,1,0,'candidate',2)
# (6,1,0,'candidate',2) < (6,1,0,'final',0) < (6,1,2,'final',0)
version_info = (8, 0, 0, ALPHA, 1)
version_info = (10, 0, 0, ALPHA, 1)
version = '.'.join(map(str, version_info[:2])) + RELEASE_LEVELS_DISPLAY[version_info[3]] + str(version_info[4] or '')
series = serie = major_version = '.'.join(map(str, version_info[:2]))

description = 'OpenERP Server'
long_desc = '''OpenERP is a complete ERP and CRM. The main features are accounting (analytic
description = 'Odoo Server'
long_desc = '''Odoo is a complete ERP and CRM. The main features are accounting (analytic
and financial), stock management, sales and purchases management, tasks
automation, marketing campaigns, help desk, POS, etc. Technical features include
a distributed server, flexible workflows, an object database, a dynamic GUI,
Expand All @@ -47,10 +47,10 @@
Programming Language :: Python
"""
url = 'http://www.openerp.com'
author = 'OpenERP S.A.'
author = 'Odoo S.A.'
author_email = '[email protected]'
license = 'AGPL-3'

nt_service_name = "openerp-server-" + series
nt_service_name = "odoo-bin-" + series

# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
# List all data files
def data():
r = {}
for root, dirnames, filenames in os.walk('openerp'):
for root, dirnames, filenames in os.walk('odoo'):
for filename in filenames:
if not re.match(r'.*(\.pyc|\.pyo|\~)$', filename):
r.setdefault(root, []).append(os.path.join(root, filename))
Expand Down Expand Up @@ -73,8 +73,8 @@ def py2exe_options():
if os.name == 'nt':
import py2exe
return {
"console" : [ { "script": "openerp-server", "icon_resources": [(1, join("install","openerp-icon.ico"))], },
{ "script": "openerp-gevent" },
"console" : [ { "script": "odoo-bin", "icon_resources": [(1, join("install","odoo-icon.ico"))], },
{ "script": "odoo-gevent" },
{ "script": "odoo.py" },
],
'options' : {
Expand All @@ -98,7 +98,7 @@ def py2exe_options():
"mako",
"markupsafe", # dependence of jinja2 and mako
"mock",
"openerp",
"odoo",
"poplib",
"psutil",
"pychart",
Expand All @@ -125,7 +125,7 @@ def py2exe_options():
else:
return {}

execfile(join(os.path.dirname(__file__), 'openerp', 'release.py'))
execfile(join(os.path.dirname(__file__), 'odoo', 'release.py'))

# Notes for OpenERP developer on windows:
#
Expand All @@ -141,7 +141,7 @@ def py2exe_options():
# Both python2.7 32bits and 64bits are known to work.

setuptools.setup(
name = 'openerp',
name = 'odoo',
version = version,
description = description,
long_description = long_desc,
Expand All @@ -150,7 +150,7 @@ def py2exe_options():
author_email = author_email,
classifiers = filter(None, classifiers.split("\n")),
license = license,
scripts = ['openerp-server', 'openerp-gevent', 'odoo.py'],
scripts = ['odoo-bin', 'odoo-gevent', 'odoo.py'],
data_files = data(),
packages = setuptools.find_packages(),
dependency_links = ['http://download.gna.org/pychart/'],
Expand Down
88 changes: 38 additions & 50 deletions anybox/recipe/odoo/tests/test_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
class TestingRecipe(BaseRecipe):
"""A subclass with just enough few defaults for unit testing."""

release_filenames = {'8.0': 'blob-%s.tgz'}
nightly_filenames = {'8.0': '8-0-nightly-%s.tbz'}
release_dl_url = {'8.0': 'http://release.odoo.test/src/'}
release_filenames = {'10.0': 'blob-%s.tgz'}
nightly_filenames = {'10.0': '10-0-nightly-%s.tbz'}
release_dl_url = {'10.0': 'http://release.odoo.test/src/'}


class TestBaseRecipe(RecipeTestCase):
Expand All @@ -39,67 +39,55 @@ def assertDownloadUrl(self, url):
self.assertEquals(source[1], url)

def test_version_release_8_0(self):
self.make_recipe(version='8.0-1')
self.make_recipe(version='10.0-1')

recipe = self.recipe
self.assertEquals(recipe.version_wanted, '8.0-1')
self.assertDownloadUrl('http://release.odoo.test/src/blob-8.0-1.tgz')
self.assertEquals(recipe.version_wanted, '10.0-1')
self.assertDownloadUrl('http://release.odoo.test/src/blob-10.0-1.tgz')

def test_version_nightly_8_0(self):
self.make_recipe(version='nightly 8.0 1234-5')
self.make_recipe(version='nightly 10.0 1234-5')

self.assertDownloadUrl(
'http://nightly.odoo.com/8.0/nightly/src/'
'8-0-nightly-1234-5.tbz')
'http://nightly.odoo.com/10.0/nightly/src/'
'10-0-nightly-1234-5.tbz')

def test_version_bzr_8_0(self):
# this one is a bit ridiculous now, but let's keep it
# and make a Git one beside it
self.make_recipe(
version='bzr lp:openobject-server/8.0 openerp-8.0 last:1')

recipe = self.recipe
self.assertEquals(self.get_source_type(), 'bzr')
self.assertEquals(self.get_source_url(),
('lp:openobject-server/8.0', 'last:1'))
self.assertEquals(recipe.openerp_dir,
os.path.join(recipe.parts, 'openerp-8.0'))

def test_version_local(self):
local_path = 'path/to/local/version'
self.make_recipe(version='local ' + local_path)
recipe = self.recipe
self.assertEquals(self.get_source_type(), 'local')
self.assertTrue(recipe.openerp_dir.endswith(local_path))
self.assertTrue(recipe.odoo_dir.endswith(local_path))

def test_version_url(self):
url = 'http://download.example/future/openerp-12.0.tgz'
url = 'http://download.example/future/odoo-12.0.tgz'
self.make_recipe(version='url ' + url)
recipe = self.recipe
self.assertDownloadUrl(url)
self.assertEquals(recipe.archive_filename, 'openerp-12.0.tgz')
self.assertEquals(recipe.archive_filename, 'odoo-12.0.tgz')

def test_base_url(self):
self.make_recipe(version='8.0-1',
base_url='http://example.org/openerp')
self.assertDownloadUrl('http://example.org/openerp/blob-8.0-1.tgz')
self.make_recipe(version='10.0-1',
base_url='http://example.org/odoo')
self.assertDownloadUrl('http://example.org/odoo/blob-10.0-1.tgz')

def test_base_url_nightly(self):
self.make_recipe(version='nightly 8.0 1234-5',
base_url='http://example.org/openerp')
self.make_recipe(version='nightly 10.0 1234-5',
base_url='http://example.org/odoo')
self.assertDownloadUrl(
'http://example.org/openerp/8-0-nightly-1234-5.tbz')
'http://example.org/odoo/8-0-nightly-1234-5.tbz')

def test_buildout_cfg_name(self):
self.make_recipe(version='8.0-1')
self.make_recipe(version='10.0-1')
bcn = self.recipe.buildout_cfg_name
self.assertEquals(bcn(), 'buildout.cfg')
self.assertEquals(bcn(('-D', 'install', 'openerp')), 'buildout.cfg')
self.assertEquals(bcn(('-c', '8.0.cfg')), '8.0.cfg')
self.assertEquals(bcn(('--config', '8.0.cfg')), '8.0.cfg')
self.assertEquals(bcn(('-o', '--config', '8.0.cfg')), '8.0.cfg')
self.assertEquals(bcn(('--config=8.0.cfg',)), '8.0.cfg')
self.assertEquals(bcn(('--config=8.0.cfg', '-o')), '8.0.cfg')
self.assertEquals(bcn(('-D', 'install', 'odoo')), 'buildout.cfg')
self.assertEquals(bcn(('-c', '10.0.cfg')), '10.0.cfg')
self.assertEquals(bcn(('--config', '10.0.cfg')), '10.0.cfg')
self.assertEquals(bcn(('-o', '--config', '10.0.cfg')), '10.0.cfg')
self.assertEquals(bcn(('--config=10.0.cfg',)), '10.0.cfg')
self.assertEquals(bcn(('--config=10.0.cfg', '-o')), '10.0.cfg')

def test_parse_addons_revisions(self):
"""Test both parse_addons and parse_revisions."""
Expand Down Expand Up @@ -139,9 +127,9 @@ def test_parse_addons_illformed(self):
# bad option
'hg http://some/repo addons-specific default opt:spam',
# attempt to comment a line
"""bzr lp:openerp-web web last:1 subdir=addons
bzr lp:openobject-addons openerp-addons last:1
# bzr lp:openerp-something/8.0 addons-something last:1""",
"""bzr lp:odoo-web web last:1 subdir=addons
bzr lp:openobject-addons odoo-addons last:1
# bzr lp:odoo-something/10.0 addons-something last:1""",
):
self.assertRaises(UserError,
recipe.parse_addons, dict(addons=illformed))
Expand Down Expand Up @@ -260,8 +248,8 @@ def test_finalize_addons_paths_git_layout(self):
self.make_recipe(
version='git http://github.com/odoo/odoo.git odoo 7.0')
self.recipe.version_detected = '7.0-somerev'
oerp_dir = self.recipe.openerp_dir
base_addons = os.path.join(oerp_dir, 'openerp', 'addons')
oerp_dir = self.recipe.odoo_dir
base_addons = os.path.join(oerp_dir, 'odoo', 'addons')
odoo_addons = os.path.join(oerp_dir, 'addons')
os.makedirs(base_addons)
os.makedirs(odoo_addons)
Expand All @@ -272,10 +260,10 @@ def test_finalize_addons_paths_git_layout(self):

def test_finalize_addons_paths_bzr_layout(self):
self.make_recipe(
version='bzr lp:openobject-server openerp last:1')
version='bzr lp:openobject-server odoo last:1')
self.recipe.version_detected = '7.0-somerev'
oerp_dir = self.recipe.openerp_dir
base_addons = os.path.join(oerp_dir, 'openerp', 'addons')
oerp_dir = self.recipe.odoo_dir
base_addons = os.path.join(oerp_dir, 'odoo', 'addons')
os.makedirs(base_addons)
self.recipe.addons_paths = ['/some/separate/addons']
self.recipe.finalize_addons_paths(check_existence=False)
Expand All @@ -290,8 +278,8 @@ def test_finalize_addons_paths_order(self):
self.make_recipe(
version='git http://github.com/odoo/odoo.git odoo 7.0')
self.recipe.version_detected = '7.0-somerev'
oerp_dir = self.recipe.openerp_dir
base_addons = os.path.join(oerp_dir, 'openerp', 'addons')
oerp_dir = self.recipe.odoo_dir
base_addons = os.path.join(oerp_dir, 'odoo', 'addons')
odoo_addons = os.path.join(oerp_dir, 'addons')
os.makedirs(base_addons)
os.makedirs(odoo_addons)
Expand All @@ -311,13 +299,13 @@ def make_recipe_appplying_requirements_file(self, reqs_content):
self.make_recipe(
version='git http://github.com/odoo/odoo.git odoo 7.0', **opts)

self.recipe.version_detected = '8.0-somerev'
oerp_dir = self.recipe.openerp_dir
self.recipe.version_detected = '10.0-somerev'
oerp_dir = self.recipe.odoo_dir
os.makedirs(oerp_dir)
if reqs_content is None:
return

with open(os.path.join(self.recipe.openerp_dir,
with open(os.path.join(self.recipe.odoo_dir,
'requirements.txt'), 'w') as f:
f.write(reqs_content + '\n')

Expand Down
Loading

0 comments on commit d417165

Please sign in to comment.