{"action":"created","issue":{"url":"https://api.github.com/repos/OCA/server-tools/issues/1191","repository_url":"https://api.github.com/repos/OCA/server-tools","labels_url":"https://api.github.com/repos/OCA/server-tools/issues/1191/labels{/name}","comments_url":"https://api.github.com/repos/OCA/server-tools/issues/1191/comments","events_url":"https://api.github.com/repos/OCA/server-tools/issues/1191/events","html_url":"https://github.com/OCA/server-tools/pull/1191","id":305968542,"number":1191,"title":"[FIX] base_technical_features: add web dependency for fixing base_imp…","user":{"login":"Yenthe666","id":6352350,"avatar_url":"https://avatars3.githubusercontent.com/u/6352350?v=4","gravatar_id":"","url":"https://api.github.com/users/Yenthe666","html_url":"https://github.com/Yenthe666","followers_url":"https://api.github.com/users/Yenthe666/followers","following_url":"https://api.github.com/users/Yenthe666/following{/other_user}","gists_url":"https://api.github.com/users/Yenthe666/gists{/gist_id}","starred_url":"https://api.github.com/users/Yenthe666/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Yenthe666/subscriptions","organizations_url":"https://api.github.com/users/Yenthe666/orgs","repos_url":"https://api.github.com/users/Yenthe666/repos","events_url":"https://api.github.com/users/Yenthe666/events{/privacy}","received_events_url":"https://api.github.com/users/Yenthe666/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/OCA/server-tools/milestones/5","html_url":"https://github.com/OCA/server-tools/milestone/5","labels_url":"https://api.github.com/repos/OCA/server-tools/milestones/5/labels","id":2052382,"number":5,"title":"10.0","description":null,"creator":{"login":"pedrobaeza","id":7165771,"avatar_url":"https://avatars2.githubusercontent.com/u/7165771?v=4","gravatar_id":"","url":"https://api.github.com/users/pedrobaeza","html_url":"https://github.com/pedrobaeza","followers_url":"https://api.github.com/users/pedrobaeza/followers","following_url":"https://api.github.com/users/pedrobaeza/following{/other_user}","gists_url":"https://api.github.com/users/pedrobaeza/gists{/gist_id}","starred_url":"https://api.github.com/users/pedrobaeza/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pedrobaeza/subscriptions","organizations_url":"https://api.github.com/users/pedrobaeza/orgs","repos_url":"https://api.github.com/users/pedrobaeza/repos","events_url":"https://api.github.com/users/pedrobaeza/events{/privacy}","received_events_url":"https://api.github.com/users/pedrobaeza/received_events","type":"User","site_admin":false},"open_issues":44,"closed_issues":116,"state":"open","created_at":"2016-10-06T14:08:32Z","updated_at":"2018-03-17T11:08:04Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2018-03-16T15:19:24Z","updated_at":"2018-03-17T13:21:45Z","closed_at":"2018-03-17T11:08:04Z","author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/OCA/server-tools/pulls/1191","html_url":"https://github.com/OCA/server-tools/pull/1191","diff_url":"https://github.com/OCA/server-tools/pull/1191.diff","patch_url":"https://github.com/OCA/server-tools/pull/1191.patch"},"body":"This dependency is needed if you're working with advanced testing or Odoo.sh.\r\nIf you do not have the dependency set to `web` the test ` test_shallow` will fail from the module `base_import` .\r\nWhen you add this dependency all Odoo.sh projects and tests will build fine. This is because the dependency for `web` will be installed before the module `base_technical_features` which adds an item (id) to the result. Without this extra item added the `assertEqual` fails.\r\n\r\nThe output of the test without this dependency:\r\n```\r\n\r\nDate | Level | Type | Message\r\n-- | -- | -- | --\r\n03/16/2018 15:46:04 | ERROR | server | FAIL\r\n03/16/2018 15:46:14 | ERROR | server | FAIL: test_shallow (odoo.addons.base_import.tests.test_base_import.TestO2M)\r\n03/16/2018 15:46:14 | ERROR | server | Traceback (most recent call last):\r\n03/16/2018 15:46:14 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/base_import/tests/test_base_import.py\", line 104, in test_shallow\r\n03/16/2018 15:46:14 | ERROR | server | `     {'id': 'value', 'name': 'value', 'string': 'Value', 'required': False, 'fields': [], 'type': 'integer'},\r\n03/16/2018 15:46:14 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/base_import/tests/test_base_import.py\", line 38, in assertEqualFields\r\n03/16/2018 15:46:14 | ERROR | server | `     self.assertEqual(sorted_fields(fields1), sorted_fields(fields2))\r\n03/16/2018 15:46:14 | ERROR | server | ` AssertionError: Lists differ: [{'na[164 chars]e': '.id', 'id': '.id', 'string': 'Database ID[619 chars]ny'}] != [{'na[164 chars]e': 'id', 'id': 'id', 'string': 'External ID',[517 chars]ny'}]\r\n03/16/2018 15:46:14 | ERROR | server | `\r\n03/16/2018 15:46:14 | ERROR | server | ` First differing element 1:\r\n03/16/2018 15:46:14 | ERROR | server | ` {'name': 'value', 'id': 'value', 'string': 'Value', 'fields': [{'name': '.id', 'id': '.id', 'string': 'Database ID', 'fields': [], 'required': False, 'type': 'id'}, {'name': 'id', 'id': 'id', 'string': 'External ID', 'fields': [], 'required': False, 'type': 'id'}, {'name': 'parent_id', 'id': 'parent_id', 'string': 'Parent', 'fields': [{'name': 'id', 'fields': [], 'string': 'External ID', 'required': False, 'id': 'parent_id', 'type': 'id'}, {'name': '.id', 'fields': [], 'string': 'Database ID', 'required': False, 'id': 'parent_id', 'type': 'id'}], 'required': False, 'type': 'many2one'}, {'name': 'value', 'id': 'value', 'string': 'Value', 'fields': [], 'required': False, 'type': 'integer'}], 'required': False, 'type': 'one2many'}\r\n03/16/2018 15:46:14 | ERROR | server | ` {'name': 'value', 'id': 'value', 'string': 'Value', 'fields': [{'name': 'id', 'id': 'id', 'string': 'External ID', 'fields': [], 'required': False, 'type': 'id'}, {'name': 'parent_id', 'fields': [{'name': 'id', 'id': 'parent_id', 'string': 'External ID', 'fields': [], 'required': False, 'type': 'id'}, {'name': '.id', 'id': 'parent_id', 'string': 'Database ID', 'fields': [], 'required': False, 'type': 'id'}], 'string': 'Parent', 'required': False, 'id': 'parent_id', 'type': 'many2one'}, {'name': 'value', 'id': 'value', 'string': 'Value', 'fields': [], 'required': False, 'type': 'integer'}], 'required': False, 'type': 'one2many'}\r\n03/16/2018 15:46:14 | ERROR | server | `\r\n03/16/2018 15:46:14 | ERROR | server | ` Diff is 1557 characters long. Set self.maxDiff to None to see it.\r\n03/16/2018 15:46:14 | ERROR | server | FAILED\r\n03/16/2018 15:46:14 | ERROR | server | Module base_import: 1 failures, 0 errors\r\n03/16/2018 15:46:54 | ERROR | server | At least one test failed when loading the modules.\r\n03/16/2018 15:47:13 | WARNING | server | warning: Some modules could not be started\r\n03/16/2018 15:55:18 | ERROR | server | FAIL\r\n03/16/2018 15:55:30 | WARNING | server | warning: Some modules could not be started\r\n03/16/2018 16:00:13 | ERROR | server | FAIL\r\n03/16/2018 16:00:19 | ERROR | server | FAIL: test_01_js (odoo.addons.web.tests.test_js.WebSuite)\r\n03/16/2018 16:00:19 | ERROR | server | Traceback (most recent call last):\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/web/tests/test_js.py\", line 16, in test_01_js\r\n03/16/2018 16:00:19 | ERROR | server | `     self.phantom_js('/web/tests?mod=web', \"\", \"\", login='admin', timeout=500)\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 459, in phantom_js\r\n03/16/2018 16:00:19 | ERROR | server | `     self.phantom_run(cmd, timeout)\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 386, in phantom_run\r\n03/16/2018 16:00:19 | ERROR | server | `     result = self.phantom_poll(phantom, timeout)\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 345, in phantom_poll\r\n03/16/2018 16:00:19 | ERROR | server | ` AssertionError: Ran out of data to read\r\n03/16/2018 16:00:19 | ERROR | server | `     self.fail(\"Ran out of data to read\")\r\n03/16/2018 16:00:19 | ERROR | server | Traceback (most recent call last):\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 459, in phantom_js\r\n03/16/2018 16:00:19 | ERROR | server | `     result = self.phantom_poll(phantom, timeout)\r\n03/16/2018 16:00:19 | ERROR | server | ` AssertionError: Ran out of data to read\r\n03/16/2018 16:00:53 | ERROR | server | FAIL: test_01_admin_rte (odoo.addons.web_editor.tests.test_ui.TestUi)\r\n03/16/2018 16:00:53 | ERROR | server | `     self.fail(pformat(json.loads(line[prefix:])))\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/decoder.py\", line 339, in decode\r\n03/16/2018 16:00:53 | ERROR | server | `     raise JSONDecodeError(\"Expecting value\", s, err.value) from None\r\n03/16/2018 16:00:53 | ERROR | server | ` During handling of the above exception, another exception occurred:\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/web_editor/tests/test_ui.py\", line 14, in test_01_admin_rte\r\n03/16/2018 16:00:53 | ERROR | server | `     self.phantom_run(cmd, timeout)\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 364, in phantom_poll\r\n03/16/2018 16:00:53 | ERROR | server | FAIL: test_02_admin_rte_inline (odoo.addons.web_editor.tests.test_ui.TestUi)\r\n03/16/2018 16:00:53 | ERROR | server | `     self.fail(pformat(json.loads(line[prefix:])))\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/decoder.py\", line 339, in decode\r\n03/16/2018 16:00:53 | ERROR | server | `     raise JSONDecodeError(\"Expecting value\", s, err.value) from None\r\n03/16/2018 16:00:53 | ERROR | server | ` During handling of the above exception, another exception occurred:\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/web_editor/tests/test_ui.py\", line 17, in test_02_admin_rte_inline\r\n03/16/2018 16:00:53 | ERROR | server | `     self.phantom_run(cmd, timeout)\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 364, in phantom_poll\r\n03/16/2018 16:00:53 | ERROR | server | FAILED\r\n03/16/2018 16:00:19 | ERROR | server | FAIL: test_02_js (odoo.addons.web.tests.test_js.WebSuite)\r\n03/16/2018 16:00:19 | ERROR | server | `     self.phantom_js('/web/tests/mobile?mod=web', \"\", \"\", login='admin', timeout=300)\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 386, in phantom_run\r\n03/16/2018 16:00:19 | ERROR | server | `     self.fail(\"Ran out of data to read\")\r\n03/16/2018 16:00:19 | ERROR | server | Module web: 2 failures, 0 errors\r\n03/16/2018 16:00:30 | WARNING | server | warning: Some modules could not be started\r\n03/16/2018 16:00:36 | ERROR | server | FAIL\r\n03/16/2018 16:00:47 | WARNING | server | warning: Some modules could not be started\r\n03/16/2018 16:00:53 | ERROR | server | FAIL\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 362, in phantom_poll\r\n03/16/2018 16:00:53 | ERROR | server | `     return _default_decoder.decode(s)\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/decoder.py\", line 357, in raw_decode\r\n03/16/2018 16:00:53 | ERROR | server | `\r\n03/16/2018 16:00:53 | ERROR | server | ` Traceback (most recent call last):\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 459, in phantom_js\r\n03/16/2018 16:00:53 | ERROR | server | `     result = self.phantom_poll(phantom, timeout)\r\n03/16/2018 16:00:53 | ERROR | server | ` AssertionError: error timeout after 10000 ms\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 362, in phantom_poll\r\n03/16/2018 16:00:53 | ERROR | server | `     return _default_decoder.decode(s)\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/decoder.py\", line 357, in raw_decode\r\n03/16/2018 16:00:53 | ERROR | server | `\r\n03/16/2018 16:00:53 | ERROR | server | ` Traceback (most recent call last):\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 459, in phantom_js\r\n03/16/2018 16:00:53 | ERROR | server | `     result = self.phantom_poll(phantom, timeout)\r\n03/16/2018 16:00:53 | ERROR | server | ` AssertionError: error timeout after 10000 ms\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/addons/web/tests/test_js.py\", line 20, in test_02_js\r\n03/16/2018 16:00:19 | ERROR | server | `     self.phantom_run(cmd, timeout)\r\n03/16/2018 16:00:19 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 345, in phantom_poll\r\n03/16/2018 16:00:19 | ERROR | server | FAILED\r\n03/16/2018 16:00:53 | ERROR | server | Traceback (most recent call last):\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/__init__.py\", line 319, in loads\r\n03/16/2018 16:00:53 | ERROR | server | `     obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\n03/16/2018 16:00:53 | ERROR | server | ` json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)\r\n03/16/2018 16:00:53 | ERROR | server | `\r\n03/16/2018 16:00:53 | ERROR | server | `     self.phantom_js(\"/web\", \"odoo.__DEBUG__.services['web_tour.tour'].run('rte')\", \"odoo.__DEBUG__.services['web_tour.tour'].tours.rte.ready\", login='admin')\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 386, in phantom_run\r\n03/16/2018 16:00:53 | ERROR | server | `     self.fail(lline)\r\n03/16/2018 16:00:53 | ERROR | server | Traceback (most recent call last):\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/usr/lib/python3.5/json/__init__.py\", line 319, in loads\r\n03/16/2018 16:00:53 | ERROR | server | `     obj, end = self.raw_decode(s, idx=_w(s, 0).end())\r\n03/16/2018 16:00:53 | ERROR | server | ` json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)\r\n03/16/2018 16:00:53 | ERROR | server | `\r\n03/16/2018 16:00:53 | ERROR | server | `     self.phantom_js(\"/web\", \"odoo.__DEBUG__.services['web_tour.tour'].run('rte_inline')\", \"odoo.__DEBUG__.services['web_tour.tour'].tours.rte_inline.ready\", login='admin')\r\n03/16/2018 16:00:53 | ERROR | server | `   File \"/home/odoo/src/odoo/odoo/tests/common.py\", line 386, in phantom_run\r\n03/16/2018 16:00:53 | ERROR | server | `     self.fail(lline)\r\n03/16/2018 16:00:53 | ERROR | server | Module web_editor: 2 failures, 0 errors\r\n\r\n\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/OCA/server-tools/issues/comments/373919721","html_url":"https://github.com/OCA/server-tools/pull/1191#issuecomment-373919721","issue_url":"https://api.github.com/repos/OCA/server-tools/issues/1191","id":373919721,"user":{"login":"Yenthe666","id":6352350,"avatar_url":"https://avatars3.githubusercontent.com/u/6352350?v=4","gravatar_id":"","url":"https://api.github.com/users/Yenthe666","html_url":"https://github.com/Yenthe666","followers_url":"https://api.github.com/users/Yenthe666/followers","following_url":"https://api.github.com/users/Yenthe666/following{/other_user}","gists_url":"https://api.github.com/users/Yenthe666/gists{/gist_id}","starred_url":"https://api.github.com/users/Yenthe666/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Yenthe666/subscriptions","organizations_url":"https://api.github.com/users/Yenthe666/orgs","repos_url":"https://api.github.com/users/Yenthe666/repos","events_url":"https://api.github.com/users/Yenthe666/events{/privacy}","received_events_url":"https://api.github.com/users/Yenthe666/received_events","type":"User","site_admin":false},"created_at":"2018-03-17T13:21:45Z","updated_at":"2018-03-17T13:21:45Z","author_association":"CONTRIBUTOR","body":"Thank you guys!"}}
{"actor":{"display_login":"Yenthe666"}}