Commit Graph

224 Commits

Author SHA1 Message Date
Anael Closson 90dcc00443 [FIX] OPW 598942 : orm read_group doesn't take referenced fields or aggregated fields in account when sorting
Sorting was done using a search on ids that where found in a custom SQL field,
only 1 record among aggregated records with same groupby value was used
when using search for ordering, resulting data ordered on
max(aggregated_data).field_value instead of sum(aggregated_data.field_value).

lp bug: https://launchpad.net/bugs/1060086 fixed

bzr revid: acl@openerp.com-20140217172926-ka2fw8t2l3cqi7h3
2014-02-17 18:29:26 +01:00
Antony Lesuisse 62f20f3302 [FIX] tests move test_ui to web as it requires web.login template
bzr revid: al@openerp.com-20140216214456-gplefhb821s61677
2014-02-16 22:44:56 +01:00
Antony Lesuisse c8324bafcc [IMP] phantomjs testing
- avoid dbmanager by presetting db in the test session
- correctly handle login option
- serialize test cursor access

bzr revid: al@openerp.com-20140216212222-4o6x9uljyua3g1og
2014-02-16 22:22:22 +01:00
Xavier Morel 325ad57a00 [FIX] branding distribution to generate correct xpath even after injection of inherited view contents
bzr revid: xmo@openerp.com-20140213164546-xor2k3tat8d216wq
2014-02-13 17:45:46 +01:00
Antony Lesuisse 1f78dfb76d [IMP] phantomjs testing add an easy phantom_js helper
self.phantom_js(<page_to_load>, <code_to_run>, <global_object_to_wait>, **options)

example:

self.phantom_js("/", "openerp.module.mytest()", "openerp.module.mytest");

console.log('ok') or console.log('error') should be used to signal success or
failure. Other console.log's will be passed to the test logger.

bzr revid: al@openerp.com-20140210004517-jc2cobc31qshxchm
2014-02-10 01:45:17 +01:00
Antony Lesuisse fb88cb841f [IMP] test_ui shorter code
bzr revid: al@openerp.com-20140209234714-bq5w2zo9v402x87v
2014-02-10 00:47:14 +01:00
Antony Lesuisse 8790ae76fc [IMP] rename into test_ui like addons
bzr revid: al@openerp.com-20140209231948-5tqj0nndsod0gyb1
2014-02-10 00:19:48 +01:00
Antony Lesuisse 1f67b2165c [IMP] phantomtest helper
bzr revid: al@openerp.com-20140209223917-vruzjvl0mtsqoo87
2014-02-09 23:39:17 +01:00
Antony Lesuisse ac68581e2e [FIX] re-enable test func and qweb
bzr revid: al@openerp.com-20140209143326-mitb5g9sdsll9arj
2014-02-09 15:33:26 +01:00
Antony Lesuisse 82372e6a02 move tests
move test modules
remove xml test
add phantomjs test
readd remove uninstall test (currently disabled because of cr.commit)

bzr revid: al@openerp.com-20140209003745-ehrx8ikwkmusa644
2014-02-09 01:37:45 +01:00
Christophe Simonis 500fea28b7 [MERGE] forward port of branch saas-2 up to revid 5007 chs@openerp.com-20140206110220-myn57cryam1y4k9v
bzr revid: chs@openerp.com-20140206110423-qe4h5ip2dg6dm7ph
2014-02-06 12:04:23 +01:00
Christophe Simonis a69f789b41 [MERGE] forward port of branch 7.0 up to revid 5224 chs@openerp.com-20140206105141-7e8bv8ordqqsswh7
bzr revid: dle@openerp.com-20140205105045-j95kduyjiq83e57z
bzr revid: dle@openerp.com-20140114173613-ruxye1m7fxtcjfim
bzr revid: dle@openerp.com-20140116161158-u95vcs3os4tk2zob
bzr revid: dle@openerp.com-20140121172737-gzawfi3ssg7xifef
bzr revid: chs@openerp.com-20140129094554-c3abc8x3qz9mpszr
bzr revid: chs@openerp.com-20140129140159-9vwkpr078shoonum
bzr revid: chs@openerp.com-20140206110220-myn57cryam1y4k9v
2014-02-06 12:02:20 +01:00
Martin Trigaux 5f10bec1a0 [IMP] better assert message and cleaning
bzr revid: mat@openerp.com-20140203134051-lgwo4v0rdntgxyor
2014-02-03 14:40:51 +01:00
Martin Trigaux 6ea8851fd0 [ADD] test read_group on a column of _inherits model and group on right field
bzr revid: mat@openerp.com-20140203133331-mujvv812zd971ci2
2014-02-03 14:33:31 +01:00
Olivier Dony c3c0705203 [FIX] ir.ui.view: fix tests after refactoring of ir.ui.view/qweb view processing
bzr revid: odo@openerp.com-20140130154354-6xg4mx31to4dg0ql
2014-01-30 16:43:54 +01:00
Fabien Meghazi 53098c666c [MERGE] trunk's CORS support (merge with changes)
bzr revid: chs@openerp.com-20140130120448-tj9pu30o7dj74zid
bzr revid: fme@openerp.com-20140130125425-j1yn6p4lr7lincr3
2014-01-30 13:54:25 +01:00
Christophe Simonis 378c908d4c [MERGE] forward port of branch saas-2 up to revid 5006 chs@openerp.com-20140129140159-9vwkpr078shoonum
bzr revid: chs@openerp.com-20140129094847-4rsg0kjio0ed0rjk
bzr revid: chs@openerp.com-20140129141002-4p8fttm8ii0ogsse
2014-01-29 15:10:02 +01:00
Martin Trigaux cb4ce12d3a [IMP] make sure the records will be in right order (and trigger chirurgiens-dentistes.fr for the second name_search)
bzr revid: mat@openerp.com-20140129124806-dq56o7r1yt38nb08
2014-01-29 13:48:06 +01:00
Martin Trigaux e6ee1947f8 [FIX] better test, add missing parentheses in query, return empty list in case of no idea (instead of triggering super)
bzr revid: mat@openerp.com-20140129123404-8hs786n64briqyta
2014-01-29 13:34:04 +01:00
Martin Trigaux 5d38e40e6b [FIX] revert previous rev for better where and add test
bzr revid: mat@openerp.com-20140129113938-517gqfi1kzcf64fz
2014-01-29 12:39:38 +01:00
Christophe Simonis 143f520395 [FIX] test ir_attachment: files are not directories
bzr revid: chs@openerp.com-20140116224207-m2s5ljkb1t7q54tk
2014-01-16 23:42:07 +01:00
Christophe Simonis c55079f112 [IMP] ir.attachment: active db storage by setting setting to "db"
bzr revid: chs@openerp.com-20140116224058-v53fozipvi0obmq1
2014-01-16 23:40:58 +01:00
Christophe Simonis 895b3c96f6 [FIX] test ir_attachment: call super()
bzr revid: chs@openerp.com-20140116221403-h6h9cvt9rn8y2yj1
2014-01-16 23:14:03 +01:00
Christophe Simonis 3275de5981 [IMP] ir.attachment: filestore is now in data-dir and by default
bzr revid: chs@openerp.com-20140116185415-ajia02bsty9joox7
2014-01-16 19:54:15 +01:00
Thibault Delavallée 7a72d858cb [MERGE] Sync with trunk
bzr revid: tde@openerp.com-20140103151324-jk0u8vmrxxomy5vx
2014-01-03 16:13:24 +01:00
Martin Trigaux 0bd968a801 [MERGE] [FIX] ir_translation: backport of rev 5018 from trunk
rename method load to load_module_terms to avoid name clash with load call from base_import (opw 602531)

bzr revid: mat@openerp.com-20131231140358-ldh0snu9zmcs3tpw
2013-12-31 15:03:58 +01:00
Martin Trigaux 216303c2fa [FIX] ir_translation: rename method load to load_module_terms to avoid name clash with load call from base_import
bzr revid: mat@openerp.com-20131230125307-kald7ir36bvq3o7c
2013-12-30 13:53:07 +01:00
Xavier Morel 0546993327 [FIX] merge from trunk and fix handling of view inheritance
main problem, view inheritance model field would use model from the
root view (after following inherit_id links) rather than the base view
(the requested one) -> with divergent models, it was possible for the
requested view itself to never be returned.

bzr revid: xmo@openerp.com-20131212134422-uxg6h21w1jhth9ow
2013-12-12 14:44:22 +01:00
Xavier Morel 00b012c01b [ADD] tentative tests for application of view inheritance stuff
bzr revid: xmo@openerp.com-20131212120600-timum4yzr84kl0mf
2013-12-12 13:06:00 +01:00
Xavier Morel ebc6ff5256 [REM] broken tests
weird tests (using broken views, but not just broken in the way the
test expects) were really testing for error on using a field which
does not exist, predicated on full rendering of the view during
validation.

This has been removed from the website branch as it's unfeasible and
nonsensical for model-less views (e.g. qweb), and thus the test blew
up with a completely different error (missing @string) or, once the
test was fixed, wouldn't blow up at all.

bzr revid: xmo@openerp.com-20131211162412-t31bxkpy2yzdnf0q
2013-12-11 17:24:12 +01:00
Christophe Matthieu 8460122209 [MERGE] sync with trunk
bzr revid: chm@openerp.com-20131202150856-fzrfcoa8pmsjutau
2013-12-02 16:08:56 +01:00
Christophe Simonis 3211a29d9b [MERGE] forward port of branch 7.0 up to revid 5148 mat@openerp.com-20131125125008-wmpssjk5vygdcc0w
bzr revid: chs@openerp.com-20131125151017-lmj53bxg1pfrr4a7
2013-11-25 16:10:17 +01:00
Martin Trigaux 3b5cf5d56c [FIX] translations: fix tests to adapt to new duplication behaviour and remove context hack in copy_data (translations are now fully handled in copy_translation)
bzr revid: mat@openerp.com-20131125115727-o9oejao1ziagqti1
2013-11-25 12:57:27 +01:00
Denis Ledoux 6fd552c3ce [MERGE] Forward-port of latest 7.0 bugfixes, up to rev. 5139 rev-id: dle@openerp.com-20131121132305-qjlclgz5v9tze1fr
bzr revid: odo@openerp.com-20131120102545-2tlp031yib6viz35
bzr revid: chs@openerp.com-20131120161708-c8sbom592moukwxw
bzr revid: dle@openerp.com-20131121155457-lh7fzouk2upeiu16
2013-11-21 16:54:57 +01:00
Christophe Simonis ec88c042b2 [MERGE] forward port of branch saas-1 up to revid 4918 chs@openerp.com-20131114134731-n324awyon0spq624
bzr revid: chs@openerp.com-20131114135502-xqi6df3jzm7ng0io
2013-11-14 14:55:02 +01:00
Christophe Simonis 993bff902e [MERGE] forward port of branch 7.0 up to revid 4067 chs@openerp.com-20131114142639-ng7wzfjwvvel2nhv
bzr revid: dle@openerp.com-20131112134311-h1vsux0ge17bsqkc
bzr revid: chs@openerp.com-20131114134731-n324awyon0spq624
bzr revid: chs@openerp.com-20130823145204-xwpnlwg0gg2259f6
bzr revid: chs@openerp.com-20130906170157-e7m4pjskyi47q82o
bzr revid: dle@openerp.com-20130909170408-wxgoduzggap6o4ng
bzr revid: dle@openerp.com-20130919141212-ridtrvvfwvu6calr
bzr revid: dle@openerp.com-20131018120136-fvoq337kgx74njsy
bzr revid: dle@openerp.com-20131023103308-18pj2gqq3imrcir7
bzr revid: chs@openerp.com-20131030180528-hqsztaujjjqev8ky
bzr revid: dle@openerp.com-20131106100128-mx8mnguvp321wick
bzr revid: chs@openerp.com-20131115104909-3u3mu40g9xnler88
2013-11-15 11:49:09 +01:00
Christophe Simonis 1df6461c4a [FIX] base: test_translation: load an existing translation
bzr revid: chs@openerp.com-20131108225820-i2pea15b7lymyw6t
2013-11-08 23:58:20 +01:00
Martin Trigaux 861fcbcd50 [IMP] use assertEqual instead of assertTrue for better logging
bzr revid: mat@openerp.com-20131104161720-2ofur11haask32ni
2013-11-04 17:17:20 +01:00
Martin Trigaux 7e83c23844 [ADD] base: tests for translations and duplication
bzr revid: mat@openerp.com-20131104153946-vhpnbn8t1oxfaep1
2013-11-04 16:39:46 +01:00
Christophe Simonis d67ff9ba02 [FIX] views inheritance: deleting a non-existing attribute must be a no-op
bzr revid: chs@openerp.com-20131108175750-yenql6hycpn95i9j
2013-11-08 18:57:50 +01:00
Xavier Morel e5d67ad2e0 [REM] broken tests
expectation of view validation errors when creating view referencing
non-existent fields or models, but in website branch models and views
have become independents, these are not context-free errors anymore.

Also fix shit code.

bzr revid: xmo@openerp.com-20131007093328-gjrktqbsoe48ikol
2013-10-07 11:33:28 +02:00
Thibault Delavallée 54933118a4 [MERGE] Sync with trunk until revision 4957.
bzr revid: tde@openerp.com-20131002133820-8xomdumexexqp3pk
2013-10-02 15:38:20 +02:00
Christophe Simonis e9980e8725 [FIX] test_views: update matching error message
bzr revid: chs@openerp.com-20130918212216-libtu7zpsn2768j0
2013-09-18 23:22:16 +02:00
Christophe Simonis fd9a9577df [MERGE] forward port of branch saas-1 up to revid 4908 dle@openerp.com-20130918160049-fo88fl7uyhfoofkv
bzr revid: chs@openerp.com-20130918171816-cxxt3c9ktcq4a8oz
2013-09-18 19:18:16 +02:00
Christophe Simonis 7081038378 [IMP] validate custom views at the end of update of database
bzr revid: chs@openerp.com-20130912182926-3lectt8mvd9smwfb
2013-09-12 20:29:26 +02:00
Christophe Simonis e13ffe7e11 [MERGE] forward port of branch 7.0 up to revid 5075 chs@openerp.com-20130912141018-qmcyase8zqov9d01
bzr revid: chs@openerp.com-20130906165207-1oklc8cqs0rex3kg
bzr revid: dle@openerp.com-20130909170248-a4t5y6qd5ikkhhac
bzr revid: dle@openerp.com-20130911083736-6jfkb140jxbbx7j6
bzr revid: chs@openerp.com-20130912150616-v0c383trj7gaa7eu
2013-09-12 17:06:16 +02:00
Christophe Simonis 1d91378ce2 [FIX] ir.ui.view: properly validate newly created inheriting views
When a new inheriting view is imported during a module
    installation, it is validated thanks to the _constraints
    on the ir.ui.view model. However the validation uses
    a rather convoluted system for validating the whole
    view tree at once (root view + all inherited changes)
    while only taking into account the views that belong
    to modules that are currently loaded.

    This complicated system is necessary to be able to
    operate on-the-fly at any point during the registry
    loading/initialization.

    Now because _constraints are checked during create()
    this particular validation happens *before* the
    external ID (ir.model.data entry) of that new view
    can be created (it obviously needs to wait until
    the view record is inserted). As a consequence the
    view validation cannot determine the module to
    which that new view belongs, and was erroneously
    ignoring it.
    Changing the view filtering to also include views
    that have triggered this check.
    Manually created views are not check during registry
    update.

bzr revid: chs@openerp.com-20130912141018-qmcyase8zqov9d01
2013-09-12 16:10:18 +02:00
Xavier Morel 85a3d8eaeb [FIX] moved view.save to website, forgot to move tests
bzr revid: xmo@openerp.com-20130910132638-2v4ilmi5uuboazt9
2013-09-10 15:26:38 +02:00
Xavier Morel db5e36efa3 [FIX] rewrite ir_ui_view.save with new semantics, xpath fixes
since lxml provides built-in tools to generate the path for a node in a tree, don't reimplement it manually

bzr revid: xmo@openerp.com-20130812074509-yopeb4pxtsads4d9
2013-08-12 09:45:09 +02:00
Christophe Matthieu 27b69126d2 [MERGE] from trunk
bzr revid: chm@openerp.com-20130726141834-9nroj7wi4fjhd5s4
2013-07-26 16:18:34 +02:00
Thibault Delavallée f737eb63d0 [IMP] ir_actions_server: added doc + comments + recursion check
orm: added _check_m2my_recursion, to check loops in many2many recursive fields
tools: removed sms_send

bzr revid: tde@openerp.com-20130725104914-dutxfon3odp8z167
2013-07-25 12:49:14 +02:00
Thibault Delavallée a95b321883 [FIX] Fixed active_ids / active_id management, wrong getter on active_id making server action run twice.
bzr revid: tde@openerp.com-20130716082344-cvw0djli0n8pq3bt
2013-07-16 10:23:44 +02:00
Thibault Delavallée 62bcae6fcc [REF] ir.actions.server: cleaning and refactoring.
Main modifications:
- removed dummy, email (now coming with email_template), loop, sms
- cleaned code, made it easy to override
- improved view to ease the definition of new server actions
- changed/updated fields
- added tests
- added changelog

bzr revid: tde@openerp.com-20130715152424-deucc2rlg2ax3tyc
2013-07-15 17:24:24 +02:00
Vo Minh Thu 7786d96095 [FIX] ir_ui_view: restore the inheritance mechanism for model-specific inheritance:
A view for a given model can inherit from a root view specified for
another model. When applying the modifying views to the root view,
only the views with the same model as the child view must be
considered. This patch restore that behavior.

bzr revid: vmt@openerp.com-20130701145334-ojp1plqjveym7cj7
2013-07-01 16:53:34 +02:00
Vo Minh Thu f42bcfa0f8 [FIX] ir_ui_view: does no longer provide root_ancestor(), so removed corresponding test.
bzr revid: vmt@openerp.com-20130701114129-03jtrx0g6abk6xev
2013-07-01 13:41:29 +02:00
Vo Minh Thu 3b4ecbf033 [FIX] ir_ui_view: it seems the iter() method is no longer there, removed the test..
bzr revid: vmt@openerp.com-20130701112930-k8rhlvgbaj1y1zl5
2013-07-01 13:29:30 +02:00
Vo Minh Thu aba5593f01 [FIX] ir_ui_view: get_inheriting_views_arch() does no longer take a model.
bzr revid: vmt@openerp.com-20130701112726-600dsa9udm0rt4uj
2013-07-01 13:27:26 +02:00
Vo Minh Thu bd4f503b9b [FIX] ir_ui_view: __view_look_dom_arch() was renamed into postprocess_and_fields().
bzr revid: vmt@openerp.com-20130701110521-muec7xyt7op7bhql
2013-07-01 13:05:21 +02:00
Vo Minh Thu 9ad26be680 [FIX] ir_ui_view: accomodate previously changed apply_inheritance_specs() signature.
bzr revid: vmt@openerp.com-20130701105107-thsi2o2pmeifo338
2013-07-01 12:51:07 +02:00
Xavier Morel a65419b042 [IMP] add tests for apply_inheritance_specs error reporting (to improve later, eg by removing cr, uid, context, ...)
bzr revid: xmo@openerp.com-20130625102800-qpw6m9m5cib1qvu8
2013-06-25 12:28:00 +02:00
Xavier Morel b3ade05f11 [ADD] basic tests on application of inheritance specs
bzr revid: xmo@openerp.com-20130625084857-k72kpvdrvejfragb
2013-06-25 10:48:57 +02:00
Xavier Morel 65e95dae49 [FIX] view inheritance tests: generate valid architectures
bzr revid: xmo@openerp.com-20130625060041-pfgdrnawfwuts2rj
2013-06-25 08:00:41 +02:00
Antony Lesuisse ca163b58db fix check_xml, disable wrong tests
bzr revid: al@openerp.com-20130624160910-zp898ew6va3lergk
2013-06-24 18:09:10 +02:00
Antony Lesuisse 4f76c69b76 [MERGE] trunk
bzr revid: al@openerp.com-20130620151512-p5ysov21an6ogbtv
2013-06-20 17:15:12 +02:00
Thibault Delavallée d2acb63af6 [FORWARD] Forward-port of saas-1 branch until revision 4875
bzr revid: tde@openerp.com-20130522082935-rzzbc3p625rkmcdy
2013-05-22 10:29:35 +02:00
Raphael Collet ab6480dd0c [FIX] res_config tests: isinstance(x, long) is False when x is an int!
bzr revid: rco@openerp.com-20130508153207-0j8m0eiia2rvwmtf
2013-05-08 17:32:07 +02:00
Xavier Morel 282a7180ca [IMP] remove SQL definition of ir.ui.view, schema alterations
* Formally make model not required
* Remove idiotic default values on type and arch
* Make type not required (it's a function field!)

bzr revid: xmo@openerp.com-20130426145113-cf0t0xx24lk9mtgs
2013-04-26 16:51:13 +02:00
Olivier Dony ffebb64472 [MERGE] Forward-port of 7.0 fixes up to rev. 4961
rev-id odo@openerp.com-20130425171238-dhgpqbi9nio12vxk

bzr revid: odo@openerp.com-20130424131936-5eb7omkz51arnm81
bzr revid: odo@openerp.com-20130425171444-ycu89d2393f8nnxm
2013-04-25 19:14:44 +02:00
Olivier Dony 20020a7647 [FIX] res.partner: typo would prevent contact from using company address correctly if flag changed without changing/setting company + updated tests to cover this
bzr revid: odo@openerp.com-20130425171238-dhgpqbi9nio12vxk
2013-04-25 19:12:38 +02:00
Xavier Morel 7883944c19 [FIX] restrict number of fields read in model-less view test
model_ids not filtered in regular read, so get semi-random list of ids

bzr revid: xmo@openerp.com-20130425100247-2v043bbgpvcj3pv9
2013-04-25 12:02:47 +02:00
Xavier Morel e30b6edb41 [ADD] model-less fields & views munging thing
bzr revid: xmo@openerp.com-20130425093739-v0kya956yzcy5wp3
2013-04-25 11:37:39 +02:00
Xavier Morel 4923d1b82d [MOVE] ir.ui.view tests inside base tests
bzr revid: xmo@openerp.com-20130424154310-vdygcckrz6jm578p
2013-04-24 17:43:10 +02:00
Christophe Simonis 261dea6fec [MERGE] forward port of server v7 up to revision 4954
bzr revid: qdp-launchpad@openerp.com-20130422093655-txqmbalod6qmw1s6
bzr revid: chs@openerp.com-20130423183723-9kiexdyzdew8iuzm
2013-04-23 20:37:23 +02:00
Olivier Dony 18ee18244f [FIX] test_expression: assertion was too sensitive to exact parameters
Now that res.partner.child_ids has an extra domain
attribute the exact number of parameters of queries
using `child_ids` in the WHERE clause is different.

bzr revid: odo@openerp.com-20130419173159-ef1onm3823hsi77n
2013-04-19 19:31:59 +02:00
Olivier Dony dfbe68e69d [IMP] res.partner: rename commercial_id to commercial_partner_id + make function field inheritable
The name `commercial_partner_id` better reflects its
purpose and the fact that it is a FK to a partner.


An extra indirection through a lambda function was
also added to the definition of the function field
to make it possible to override it in other modules
(otherwise the function is passed by copy directly
and cannot be inherited later)

bzr revid: odo@openerp.com-20130418144533-owupfwn6h83q432x
2013-04-18 16:45:33 +02:00
Olivier Dony f985391ba0 [MERGE] Sync with 7.0
bzr revid: odo@openerp.com-20130415181836-cmq936wu0w7alwky
2013-04-15 20:18:36 +02:00
Olivier Dony 8efd16f25a [FIX] res.partner, orm._check_recursion: prevent recursive partner structures + fix false positives in check_recursion()
- res.partner must prevent creating loops in partner
hierarchies, and this can be done easily with an
extra _constraint using the ORM's builtin _check_recursion

- _check_recursion's implementation incorrectly
assumed that the provided 'ids' were unrelated
(not part of a common hierarchy).

- add tests for _check_recursion via extra
tests on res.partner structure
(explains why both patches are in the same
commit)

bzr revid: odo@openerp.com-20130415171732-aj3j2e2mycvzf4kp
2013-04-15 19:17:32 +02:00
Olivier Dony 9bec1595bd [FIX] res.partner address sync: `type` field should not be synced wih other address fields
It is valid to use the parent address but still set a different
type of address - the name, email, phone, etc. could be different.

bzr revid: odo@openerp.com-20130410123229-9l60sbcks3tpmy7x
2013-04-10 14:32:29 +02:00
Olivier Dony 9dbe29b2b5 [FIX] res.partner.address_get: default to partner being looked up rather than company when no match is found at all (and no "default" exists)
Using the commercial entity is not a very good default choice
in many cases. If a new contact is created on-the-fly for a
new document (e.g. sales order), his/her company may be an
empty shell and/or a large corporation that should not be
directly used for e.g. billing/invoicing purposed.
Once a contact/company is set to "invoicing" or "delivery"
we use it, but in other cases we stick to the provided
partner/contact as a saner default.
This should not change anything for cases where advanced
contact management is used and proper address types are
set.

bzr revid: odo@openerp.com-20130410121536-vm93o6vxhi3b8feu
2013-04-10 14:15:36 +02:00
Olivier Dony 2bf1034cd2 [FIX] res.partner: autosync of commercial fields and address fields + correct views accordingly + basic tests
* Commercial fields (bug 1160365)

Fix autosync of accounting/invoicing-related fields on contacts,
just as if they were actually modeled as fields.related to the
parent commercial entity.
This starts with the addition of the new functional field
`commercial_id`, to locate the commercial entity for any partner.
The commercial entity is defined as the first ancestor (starting
at the partner itself) that is either marked `is_company` or has
no parent. [This is Part A of the solution on bug 1160365].

Then, whenever a partner is created or modified:
- if it is a commercial entity, the commercial fields are synced
downstream to all its descendants, stopping at company boundaries.
- if is is not a commercial entity, the commercial fields are
synced from its parent commercial entity.
The list of fields to sync is determined by calling the new
res.partner method `_commercial_fields()` which can be easily
extended by any module that adds commercial fields on res.partner.
A utility method `open_commercial_entity()` was added to
res.partner to make it easy to include a button for editing the
parent commercial entity, to be displayed instead of now-hidden
commercial fields.
[This is part B of the solution on bug 1160365]

The res.partner.address_get() method (used to find child partners
of certain types, e.g. "invoice") was udpated to take the new
"commercial entity" notion into account: it will now look for
matches in children but also parents and siblings that are part
of the same "commercial entity". The default partner `type` is
now "contact" to reflect the new model ; "default" is
inappropriate because it is a wildcard and would stop the type
lookup early.
[This composes parts C and D of the solution on bug 1160365]

Note: This fix comes with a matching addons fix to implement
module-specific extensions of part B, as well as part E of the
solution.


* Address fields (bug 1160425)

Corrected autosync of address fields is also included in the
same branch, because those two mechanisms are closely related
and share some parts of the implementation.

The `use_parent_address` field now defaults to False (except
in the mini-kanban view of contacts on a partner form), and
the autosync of address fields has been modified to only work
downstream and never update a parent company if a child contact
is modified. Instead, the address fields are now displayed
readonly on contacts that use the parent address, with a button
to edit the parent address (new method open_parent(), similar
to open_commercial_entity() but opening the direct parent).

To make the initial creation of a contact + company pair,
a special case was added: when a new contact is created for
a company that has no other contact and no address, the
address of the contact is assumed to be that of the company
so it is moved to the company, then the `use_parent_address`
flag is enabled on the contact, and the `is_company` flag on
the company. This covers a use case where contact and
company are created on-the-fly when creating a new document.

Many logical flaws in the autosync of address fields have been
corrected and are now covered by unit tests.


* Misc related fixes

- checking `is_company` does not reset the parent_id field
anymore, to allow for multi-level structures. The field is
still hidden automatically because having an empty "Company"
field on the form view of a company is quite suprising), but
this UI behavior is easily customized;
- the `email`, `phone`, `fax`, `mobile`, `lang`, etc. that
were sometimes synced when changing parent company are now
properly left alone;
- the `use_parent_address` field is now always visible next
to the parent_id field when a parent is set

lp bug: https://launchpad.net/bugs/1160425 fixed
lp bug: https://launchpad.net/bugs/1160365 fixed

bzr revid: odo@openerp.com-20130408013742-tm8w0w0nmunanokk
2013-04-08 03:37:42 +02:00
Vo Minh Thu 307ca374d6 [MERGE] forward merge 7.0 until revision 4919.
bzr revid: vmt@openerp.com-20130404130704-24vsmczw34cssytd
2013-04-04 15:07:04 +02:00
Olivier Dony 84a536dca6 [MERGE] res.config: fix incorrect assertion syntax in tests
bzr revid: odo@openerp.com-20130226153623-ci35l04otvk5mb3t
2013-02-26 16:36:23 +01:00
Antonin Bourguignon e3bfbf8b9f [IMP] use assertIsInstance instead of assertTrue
bzr revid: abo@openerp.com-20130226105832-xq3mbnml1iwzvg67
2013-02-26 11:58:32 +01:00
Antonin Bourguignon 1aef18870f [IMP] use assertEqual instead of assertTrue and fix a test
bzr revid: abo@openerp.com-20130226104541-hmzla9y2sa3qfqgi
2013-02-26 11:45:41 +01:00
Antonin Bourguignon 4b3f6f2c81 [IMP] add another test for get_option_warning()
bzr revid: abo@openerp.com-20130213145057-ib8l5jd378edzz8y
2013-02-13 15:50:57 +01:00
Antonin Bourguignon bbcff0e777 [IMP] add a test for get_option_warning()
bzr revid: abo@openerp.com-20130213120940-ycgg7kgfwymav7yn
2013-02-13 13:09:40 +01:00
Antonin Bourguignon 0091477f12 [IMP] add a test for get_option_name()
bzr revid: abo@openerp.com-20130212180736-kwpqlouw27o6u6nz
2013-02-12 19:07:36 +01:00
Antonin Bourguignon dc94fc592c [IMP] add a test for get_option_path()
bzr revid: abo@openerp.com-20130212165706-pohcwrvr2llhsaeo
2013-02-12 17:57:06 +01:00
Antonin Bourguignon ce9421a130 [FIX] remove useless asserts text
bzr revid: abo@openerp.com-20130212141830-m3vzarby99fob74e
2013-02-12 15:18:30 +01:00
Vo Minh Thu 74e53085af [REF] res_lang: removed dead code (original_group function).
That function was kept because its `intersperse` reimplementation
behaves a bit differently but it was a long time ago and no bug
report appeared. So the new function is good enough.

bzr revid: vmt@openerp.com-20130212111244-aayco60ps923fn55
2013-02-12 12:12:44 +01:00
Antonin Bourguignon f1d660c853 [IMP] rename files, move code to the right place
bzr revid: abo@openerp.com-20130211170128-2r28k5ldou1qn1n5
2013-02-11 18:01:28 +01:00
Antonin Bourguignon a8a06ee6e4 [IMP] clean and sort up some old test directories
bzr revid: abo@openerp.com-20130211160443-2xcw2quaj4a5taz9
2013-02-11 17:04:43 +01:00
Olivier Dony 41598ef041 [FIX] orm.expression: `=?` domain operator broken after 7.0 refactoring ; + added tests
lp bug: https://launchpad.net/bugs/1095635 fixed

bzr revid: odo@openerp.com-20130321173737-a0j330ro4i223fkb
2013-03-21 18:37:37 +01:00
Antony Lesuisse 549c011893 [MERGE] turnk
bzr revid: al@openerp.com-20121220020708-ioiaoz58ncgw5wg7
2012-12-20 03:07:08 +01:00
Cecile Tonglet 5f0070dcb6 [FIX] Remove unused imports and fix some imports that doesn't use the new namespace
bzr revid: cto@openerp.com-20121217143029-e9ki4ftwihq7pdme
2012-12-17 15:30:29 +01:00
Antony Lesuisse 9568552636 revert test change will be moved to an other branch
bzr revid: al@openerp.com-20121216193932-foluon7b5bqqvrib
2012-12-16 20:39:32 +01:00
Antony Lesuisse 70aa2c995a filestore testcase and fix bugs
bzr revid: al@openerp.com-20121216190317-xoz0jij2cfk0c2zk
2012-12-16 20:03:17 +01:00
Antony Lesuisse 2569587c90 Simplify openerp testing, deprecated redondant test declaration, we feed all
tests.* modules to unittest2.TestLoader.loadTestsFromModule(module)

bzr revid: al@openerp.com-20121216173856-euntlfi80uzutkp0
2012-12-16 18:38:56 +01:00
Olivier Dony 1565e8c708 [IMP] ir.ui.menu: deleting a menu should orphan its children w/o corrupting the `parent_store` struct: test + fix
ir.ui.menu was recently changed to use _parent_store,
which precludes using ondelete=set null for the parent_id
column. We nevertheless need to be certain that menus
can always be deleted but *never* cascade-deleted,
due the possible presence of user-created menus.
Overriding menu.unlink() is therefore necessary,
and care must be taken to bypass the default menu
visibility (using the `ir.ui.menu.full_list` context
flag while doing so)

bzr revid: odo@openerp.com-20121213145821-u2ipdvffu00rsgdg
2012-12-13 15:58:21 +01:00
Thibault Delavallée 61a2a82174 [MERGE] Merged branch holding a proposal to solve the generate_order_by issue (see lp:1070757). As requested by Olivier Donny, this fix has been moved into generate_order_by. Deleted previous workaround done in this branch. Patch courtesy of Paulius Sladkevičius
bzr revid: tde@openerp.com-20121207155825-9bjvuxhyr0x937l7
2012-12-07 16:58:25 +01:00
Thibault Delavallée 1ca2c45d41 [IMP] [TESTS] Cleaned and updated tests about order_by with inherits and m2o fields.
bzr revid: tde@openerp.com-20121207134946-h0p1em7iq80ux0js
2012-12-07 14:49:46 +01:00
Thibault Delavallée e36b44e82f [IMP] [WIP] order_by: now using aliases in _generate_order_by, _generate_o2m_order_by, _inherits_join_add, ... added some tests. Next comits will clean a bit the code, because currently it is a bit messy.
bzr revid: tde@openerp.com-20121207115424-x8gkjcqpi8dz96g2
2012-12-07 12:54:24 +01:00
Thibault Delavallée d588388ae4 [IMP] [CLEAN] expression.parse: updated and cleaned a bit the tests. Removed print statements.
bzr revid: tde@openerp.com-20121206162219-n1c48dkjghc4nu63
2012-12-06 17:22:19 +01:00
Thibault Delavallée a0b8a58174 [IMP] [REVIEW] _auto_join on many2many now raises a NotImplementedError; added a test case for that.
bzr revid: tde@openerp.com-20121206092745-a8t62khs4x37db1g
2012-12-06 10:27:45 +01:00
Thibault Delavallée 3f34f24c02 [MERGE] Sync with trunk.
bzr revid: tde@openerp.com-20121206090241-vpbmp1fwd6gcddev
2012-12-06 10:02:41 +01:00
Christophe Simonis 84aa05b4cc [FIX] do not hardcode ids in tests
bzr revid: chs@openerp.com-20121205173733-t686x9m2yylp552w
2012-12-05 18:37:33 +01:00
Christophe Simonis 5483836f51 [FIX] do not hardcode ids in tests
bzr revid: chs@openerp.com-20121205171707-r073wdt2eza82qyt
2012-12-05 18:17:07 +01:00
Thibault Delavallée a8359924c2 [IMP] expression.parse: added the support of domain on one2many fields when _auto_true is activated. Leaf creation from an existing leaf moved as a method in expression object. Added some comments. Added / updated some tests.
bzr revid: tde@openerp.com-20121204170744-rv8e0zlteqoyj60o
2012-12-04 18:07:44 +01:00
Thibault Delavallée 9e6c2805ab [REF] [IMP] expression.parse: refactored the main parsing loop, now using source and result stacks. Leaf elements are encapsulated into a specific object, allowing to delegate the join condition formation and aliases generation, as well as working_table management to them. The main parsing loop is now a loop taking a leaf, doing one action on it, and putting the result back to be analyzed or in the results. This allows to avoid having while loops inside a main while loop with some weird corner effects.
bzr revid: tde@openerp.com-20121204142650-gkhmjdeu5upi25kp
2012-12-04 15:26:50 +01:00
Thibault Delavallée 37a949e30a [DOC] First draft of doc on _auto_join, to at least have something.
bzr revid: tde@openerp.com-20121129152852-akslcby3ics61vuz
2012-11-29 16:28:52 +01:00
Thibault Delavallée a853b9f2ad [TEST] Added some tests about the _auto_join feature.
bzr revid: tde@openerp.com-20121128140042-4r58wnzahk0io3lw
2012-11-28 15:00:42 +01:00
Thibault Delavallée 8163c0027b [IMP] [TEST] orm: updated order_by generation by adding the root table name to the order by condition generated based on self._order. Added a mockup of where_calc in test_expression, to be able to track generated Query objects. Added a first test on a one2many query, to track current behavior.
bzr revid: tde@openerp.com-20121127160627-qs1tupvgr8ypexoo
2012-11-27 17:06:27 +01:00
Vo Minh Thu dc3d462b9f [IMP] test_search: comment typos.
bzr revid: vmt@openerp.com-20121121143159-mppc6s7rezpwc3hx
2012-11-21 15:31:59 +01:00
Quentin (OpenERP) b4742249b4 [FIX] base: test_search, invalid use of search criterion 'active in (True, False)' replaced by 'active is True OR active is False'
bzr revid: qdp-launchpad@openerp.com-20121121125347-hsihsibwz0igp03r
2012-11-21 13:53:47 +01:00
Quentin (OpenERP) d0b4d040e1 [FIX] base: fixed syntax errors and test import of test_search python test
bzr revid: qdp-launchpad@openerp.com-20121121122106-4mrnlw4z01np21dq
2012-11-21 13:21:06 +01:00
Quentin (OpenERP) 72014c4109 [ADD] base: added python test on the search() method
bzr revid: qdp-launchpad@openerp.com-20121121114557-5swzfuisp2apttd5
2012-11-21 12:45:57 +01:00
Vo Minh Thu 56c1a398a0 [IMP] expression.py: added comments to the in/not in many2many tests.
bzr revid: vmt@openerp.com-20121026110109-l212flw0p5cklc6p
2012-10-26 13:01:09 +02:00
Vo Minh Thu 0537147d95 [IMP] expression.py: added tests for the in/not in operators involving a many2many.
bzr revid: vmt@openerp.com-20121026100819-b2o4q9a082um6p2m
2012-10-26 12:08:19 +02:00
Olivier Dony 43eb05242f [IMP] res.partner: add find_or_create util method for on-the-fly partner creation + update/improve tests
Changed parsing test to be higher level and test name_create as well

bzr revid: odo@openerp.com-20120904152002-8rra325huf5p3xek
2012-09-04 17:20:02 +02:00
Olivier Dony 6803862711 [IMP] res.partner: simplified+corrected parsing of partner name and email in name_create, added tests, made this internal method private
bzr revid: odo@openerp.com-20120831225205-04l4udn95cz3n72o
2012-09-01 00:52:05 +02:00
Vo Minh Thu 77ec840cb0 [FIX] ir_values: fix a test where some value was hard-coded.
bzr revid: vmt@openerp.com-20120605095210-0t5bmlyxrtnoqvr0
2012-06-05 11:52:10 +02:00
Olivier Dony dbe7b45276 [IMP] orm: support model-level @groups attribute for access restriction
This is a partial implementation with no support for
restricting read/write access via RPC. This first
part only covers the removal of the restricted fields
from the client-side view, i.e. in the results of
fields_view_get() and fields_get().

The second part will come later and will cover the
real low-level access control.

bzr revid: odo@openerp.com-20120518143625-ps9db62vzrc2pylh
2012-05-18 16:36:25 +02:00
Vo Minh Thu 0cb69a2262 [FIX] ir_values test: replaced hard-coded action ID (which changed with the previous XML changes).
bzr revid: vmt@openerp.com-20120514143614-fq3sl71a63fm60w9
2012-05-14 16:36:14 +02:00
Vo Minh Thu 6323111950 [IMP] tests:
- moved a few YAML tests to unittest2 for demonstration purpose
- changed --test-disable to --test-enable (and swapped its meaning)

bzr revid: vmt@openerp.com-20120301134608-szuktuj8imdhmn0r
2012-03-01 14:46:08 +01:00