[FIX] Remove test from saas-3 - Tech Saas & AL agreement
bzr revid: dle@openerp.com-20140311164559-1vi0mw3qm8n0vobn bzr revid: dle@openerp.com-20140312111450-smumao0hm1vzifgn bzr revid: dle@openerp.com-20140312121555-uum96hj8f2y1rvna bzr revid: jke@openerp.com-20140312125757-e2kgxuwz0jko77ve
This commit is contained in:
commit
6a01718aef
|
@ -30,7 +30,7 @@ from openerp import SUPERUSER_ID
|
||||||
from openerp import tools
|
from openerp import tools
|
||||||
from openerp.osv import fields, osv, expression
|
from openerp.osv import fields, osv, expression
|
||||||
from openerp.tools.translate import _
|
from openerp.tools.translate import _
|
||||||
from openerp.tools.float_utils import float_round
|
from openerp.tools.float_utils import float_round as round
|
||||||
|
|
||||||
import openerp.addons.decimal_precision as dp
|
import openerp.addons.decimal_precision as dp
|
||||||
|
|
||||||
|
@ -2144,7 +2144,7 @@ class account_tax(osv.osv):
|
||||||
tax_compute_precision = precision
|
tax_compute_precision = precision
|
||||||
if taxes and taxes[0].company_id.tax_calculation_rounding_method == 'round_globally':
|
if taxes and taxes[0].company_id.tax_calculation_rounding_method == 'round_globally':
|
||||||
tax_compute_precision += 5
|
tax_compute_precision += 5
|
||||||
totalin = totalex = float_round(price_unit * quantity, precision)
|
totalin = totalex = round(price_unit * quantity, precision)
|
||||||
tin = []
|
tin = []
|
||||||
tex = []
|
tex = []
|
||||||
for tax in taxes:
|
for tax in taxes:
|
||||||
|
|
|
@ -41,6 +41,23 @@ class account_voucher(osv.osv):
|
||||||
'number': fields.char('Number', size=32),
|
'number': fields.char('Number', size=32),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def _amount_to_text(self, cr, uid, amount, currency_id, context=None):
|
||||||
|
# Currency complete name is not available in res.currency model
|
||||||
|
# Exceptions done here (EUR, USD, BRL) cover 75% of cases
|
||||||
|
# For other currencies, display the currency code
|
||||||
|
currency = self.pool['res.currency'].browse(cr, uid, currency_id, context=context)
|
||||||
|
if currency.name.upper() == 'EUR':
|
||||||
|
currency_name = 'Euro'
|
||||||
|
elif currency.name.upper() == 'USD':
|
||||||
|
currency_name = 'Dollars'
|
||||||
|
elif currency.name.upper() == 'BRL':
|
||||||
|
currency_name = 'reais'
|
||||||
|
else:
|
||||||
|
currency_name = currency.name
|
||||||
|
#TODO : generic amount_to_text is not ready yet, otherwise language (and country) and currency can be passed
|
||||||
|
#amount_in_word = amount_to_text(amount, context=context)
|
||||||
|
return amount_to_text(amount, currency=currency_name)
|
||||||
|
|
||||||
def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=None):
|
def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=None):
|
||||||
""" Inherited - add amount_in_word and allow_check_writting in returned value dictionary """
|
""" Inherited - add amount_in_word and allow_check_writting in returned value dictionary """
|
||||||
if not context:
|
if not context:
|
||||||
|
@ -48,22 +65,7 @@ class account_voucher(osv.osv):
|
||||||
default = super(account_voucher, self).onchange_amount(cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=context)
|
default = super(account_voucher, self).onchange_amount(cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=context)
|
||||||
if 'value' in default:
|
if 'value' in default:
|
||||||
amount = 'amount' in default['value'] and default['value']['amount'] or amount
|
amount = 'amount' in default['value'] and default['value']['amount'] or amount
|
||||||
|
amount_in_word = self._amount_to_text(cr, uid, amount, currency_id, context=context)
|
||||||
# Currency complete name is not available in res.currency model
|
|
||||||
# Exceptions done here (EUR, USD, BRL) cover 75% of cases
|
|
||||||
# For other currencies, display the currency code
|
|
||||||
currency = self.pool['res.currency'].browse(cr, uid, currency_id, context=context)
|
|
||||||
if currency.name.upper() == 'EUR':
|
|
||||||
currency_name = 'Euro'
|
|
||||||
elif currency.name.upper() == 'USD':
|
|
||||||
currency_name = 'Dollars'
|
|
||||||
elif currency.name.upper() == 'BRL':
|
|
||||||
currency_name = 'reais'
|
|
||||||
else:
|
|
||||||
currency_name = currency.name
|
|
||||||
#TODO : generic amount_to_text is not ready yet, otherwise language (and country) and currency can be passed
|
|
||||||
#amount_in_word = amount_to_text(amount, context=context)
|
|
||||||
amount_in_word = amount_to_text(amount, currency=currency_name)
|
|
||||||
default['value'].update({'amount_in_word':amount_in_word})
|
default['value'].update({'amount_in_word':amount_in_word})
|
||||||
if journal_id:
|
if journal_id:
|
||||||
allow_check_writing = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context).allow_check_writing
|
allow_check_writing = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context).allow_check_writing
|
||||||
|
@ -92,6 +94,19 @@ class account_voucher(osv.osv):
|
||||||
},
|
},
|
||||||
'nodestroy': True
|
'nodestroy': True
|
||||||
}
|
}
|
||||||
|
def create(self, cr, uid, vals, context=None):
|
||||||
|
if vals.get('amount') and vals.get('journal_id') and 'amount_in_word' not in vals:
|
||||||
|
vals['amount_in_word'] = self._amount_to_text(cr, uid, vals['amount'], vals.get('currency_id') or \
|
||||||
|
self.pool['account.journal'].browse(cr, uid, vals['journal_id'], context=context).currency.id or \
|
||||||
|
self.pool['res.company'].browse(cr, uid, vals['company_id']).currency_id.id, context=context)
|
||||||
|
return super(account_voucher, self).create(cr, uid, vals, context=context)
|
||||||
|
|
||||||
|
def write(self, cr, uid, ids, vals, context=None):
|
||||||
|
if vals.get('amount') and vals.get('journal_id') and 'amount_in_word' not in vals:
|
||||||
|
vals['amount_in_word'] = self._amount_to_text(cr, uid, vals['amount'], vals.get('currency_id') or \
|
||||||
|
self.pool['account.journal'].browse(cr, uid, vals['journal_id'], context=context).currency.id or \
|
||||||
|
self.pool['res.company'].browse(cr, uid, vals['company_id']).currency_id.id, context=context)
|
||||||
|
return super(account_voucher, self).write(cr, uid, ids, vals, context=context)
|
||||||
|
|
||||||
def fields_view_get(self, cr, uid, view_id=None, view_type=False, context=None, toolbar=False, submenu=False):
|
def fields_view_get(self, cr, uid, view_id=None, view_type=False, context=None, toolbar=False, submenu=False):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -463,14 +463,12 @@ def process_data(cr, uid, pool, res_ids, model, method, old_values=None, new_val
|
||||||
# if at least one modification has been found
|
# if at least one modification has been found
|
||||||
for model_id, resource_id in lines:
|
for model_id, resource_id in lines:
|
||||||
line_model = pool.get('ir.model').browse(cr, SUPERUSER_ID, model_id).model
|
line_model = pool.get('ir.model').browse(cr, SUPERUSER_ID, model_id).model
|
||||||
name = pool.get(line_model).name_get(cr, uid, [resource_id])[0][1]
|
|
||||||
|
|
||||||
vals = {
|
vals = {
|
||||||
'method': method,
|
'method': method,
|
||||||
'object_id': model_id,
|
'object_id': model_id,
|
||||||
'user_id': uid,
|
'user_id': uid,
|
||||||
'res_id': resource_id,
|
'res_id': resource_id,
|
||||||
'name': name,
|
|
||||||
}
|
}
|
||||||
if (model_id, resource_id) not in old_values and method not in ('copy', 'read'):
|
if (model_id, resource_id) not in old_values and method not in ('copy', 'read'):
|
||||||
# the resource was not existing so we are forcing the method to 'create'
|
# the resource was not existing so we are forcing the method to 'create'
|
||||||
|
@ -481,7 +479,11 @@ def process_data(cr, uid, pool, res_ids, model, method, old_values=None, new_val
|
||||||
# the resource is not existing anymore so we are forcing the method to 'unlink'
|
# the resource is not existing anymore so we are forcing the method to 'unlink'
|
||||||
# (because it could also come with the value 'write' if we are deleting the
|
# (because it could also come with the value 'write' if we are deleting the
|
||||||
# record through a one2many field)
|
# record through a one2many field)
|
||||||
|
name = old_values[(model_id, resource_id)]['value'].get('name',False)
|
||||||
vals.update({'method': 'unlink'})
|
vals.update({'method': 'unlink'})
|
||||||
|
else :
|
||||||
|
name = pool[line_model].name_get(cr, uid, [resource_id])[0][1]
|
||||||
|
vals.update({'name': name})
|
||||||
# create the audittrail log in super admin mode, only if a change has been detected
|
# create the audittrail log in super admin mode, only if a change has been detected
|
||||||
if lines[(model_id, resource_id)]:
|
if lines[(model_id, resource_id)]:
|
||||||
log_id = pool.get('audittrail.log').create(cr, SUPERUSER_ID, vals)
|
log_id = pool.get('audittrail.log').create(cr, SUPERUSER_ID, vals)
|
||||||
|
|
|
@ -313,7 +313,10 @@ class crm_lead(format_address, osv.osv):
|
||||||
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context=context)
|
stage = self.pool.get('crm.case.stage').browse(cr, uid, stage_id, context=context)
|
||||||
if not stage.on_change:
|
if not stage.on_change:
|
||||||
return {'value': {}}
|
return {'value': {}}
|
||||||
return {'value': {'probability': stage.probability}}
|
vals = {'probability': stage.probability}
|
||||||
|
if stage.probability >= 100 or (stage.probability == 0 and stage.sequence > 1):
|
||||||
|
vals['date_closed'] = fields.datetime.now()
|
||||||
|
return {'value': vals}
|
||||||
|
|
||||||
def on_change_partner_id(self, cr, uid, ids, partner_id, context=None):
|
def on_change_partner_id(self, cr, uid, ids, partner_id, context=None):
|
||||||
values = {}
|
values = {}
|
||||||
|
@ -407,7 +410,7 @@ class crm_lead(format_address, osv.osv):
|
||||||
'probability = 0 %, select "Change Probability Automatically".\n'
|
'probability = 0 %, select "Change Probability Automatically".\n'
|
||||||
'Create a specific stage or edit an existing one by editing columns of your opportunity pipe.'))
|
'Create a specific stage or edit an existing one by editing columns of your opportunity pipe.'))
|
||||||
for stage_id, lead_ids in stages_leads.items():
|
for stage_id, lead_ids in stages_leads.items():
|
||||||
self.write(cr, uid, lead_ids, {'stage_id': stage_id, 'date_closed': fields.datetime.now()}, context=context)
|
self.write(cr, uid, lead_ids, {'stage_id': stage_id}, context=context)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def case_mark_won(self, cr, uid, ids, context=None):
|
def case_mark_won(self, cr, uid, ids, context=None):
|
||||||
|
@ -428,7 +431,7 @@ class crm_lead(format_address, osv.osv):
|
||||||
'probability = 100 % and select "Change Probability Automatically".\n'
|
'probability = 100 % and select "Change Probability Automatically".\n'
|
||||||
'Create a specific stage or edit an existing one by editing columns of your opportunity pipe.'))
|
'Create a specific stage or edit an existing one by editing columns of your opportunity pipe.'))
|
||||||
for stage_id, lead_ids in stages_leads.items():
|
for stage_id, lead_ids in stages_leads.items():
|
||||||
self.write(cr, uid, lead_ids, {'stage_id': stage_id, 'date_closed': fields.datetime.now()}, context=context)
|
self.write(cr, uid, lead_ids, {'stage_id': stage_id}, context=context)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def case_escalate(self, cr, uid, ids, context=None):
|
def case_escalate(self, cr, uid, ids, context=None):
|
||||||
|
|
|
@ -35,7 +35,7 @@ class mail_message(osv.Model):
|
||||||
"""
|
"""
|
||||||
if uid == SUPERUSER_ID:
|
if uid == SUPERUSER_ID:
|
||||||
return super(mail_message, self)._search(cr, uid, args, offset=offset, limit=limit, order=order,
|
return super(mail_message, self)._search(cr, uid, args, offset=offset, limit=limit, order=order,
|
||||||
context=context, count=False, access_rights_uid=access_rights_uid)
|
context=context, count=count, access_rights_uid=access_rights_uid)
|
||||||
group_ids = self.pool.get('res.users').browse(cr, uid, uid, context=context).groups_id
|
group_ids = self.pool.get('res.users').browse(cr, uid, uid, context=context).groups_id
|
||||||
group_user_id = self.pool.get("ir.model.data").get_object_reference(cr, uid, 'base', 'group_user')[1]
|
group_user_id = self.pool.get("ir.model.data").get_object_reference(cr, uid, 'base', 'group_user')[1]
|
||||||
if group_user_id not in [group.id for group in group_ids]:
|
if group_user_id not in [group.id for group in group_ids]:
|
||||||
|
|
|
@ -5,6 +5,8 @@ def load_tests(loader, base, _):
|
||||||
{'redirect': '/page/website.homepage'}))
|
{'redirect': '/page/website.homepage'}))
|
||||||
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_event_sale_test.js'),
|
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_event_sale_test.js'),
|
||||||
{'redirect': '/page/website.homepage', 'user': 'demo', 'password': 'demo'}))
|
{'redirect': '/page/website.homepage', 'user': 'demo', 'password': 'demo'}))
|
||||||
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_event_sale_test.js'),
|
# Test has been commented in SAAS-3 ONLY, it must be activated in trunk.
|
||||||
{'path': '/', 'user': None}))
|
# Log for test JS has been improved in trunk, so we stop to loss time in saas-3 and debug it directly in trunk.
|
||||||
|
# Tech Saas & AL agreement
|
||||||
|
# base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_event_sale_test.js'), {'path': '/', 'user': None}))
|
||||||
return base
|
return base
|
|
@ -7,6 +7,8 @@ def load_tests(loader, base, _):
|
||||||
{'redirect': '/page/website.homepage'}))
|
{'redirect': '/page/website.homepage'}))
|
||||||
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_sale-sale_process-test.js'),
|
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_sale-sale_process-test.js'),
|
||||||
{'redirect': '/page/website.homepage', 'user': 'demo', 'password': 'demo'}))
|
{'redirect': '/page/website.homepage', 'user': 'demo', 'password': 'demo'}))
|
||||||
base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_sale-sale_process-test.js'),
|
# Test has been commented in SAAS-3 ONLY, it must be activated in trunk.
|
||||||
{'path': '/', 'user': None}))
|
# Log for test JS has been improved in trunk, so we stop to loss time in saas-3 and debug it directly in trunk.
|
||||||
|
# Tech Saas & AL agreement
|
||||||
|
# base.addTest(test_ui.WebsiteUiSuite(test_ui.full_path(__file__,'website_sale-sale_process-test.js'), {'path': '/', 'user': None}))
|
||||||
return base
|
return base
|
Loading…
Reference in New Issue