{"action":"created","issue":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/2441","labels_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/2441/labels{/name}","comments_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/2441/comments","events_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/2441/events","html_url":"https://github.com/SatelliteQE/robottelo/pull/2441","id":88052926,"number":2441,"title":"[DO NOT MERGE] API test overhaul omnibus","user":{"login":"Ichimonji10","id":1012989,"avatar_url":"https://avatars.githubusercontent.com/u/1012989?v=3","gravatar_id":"","url":"https://api.github.com/users/Ichimonji10","html_url":"https://github.com/Ichimonji10","followers_url":"https://api.github.com/users/Ichimonji10/followers","following_url":"https://api.github.com/users/Ichimonji10/following{/other_user}","gists_url":"https://api.github.com/users/Ichimonji10/gists{/gist_id}","starred_url":"https://api.github.com/users/Ichimonji10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ichimonji10/subscriptions","organizations_url":"https://api.github.com/users/Ichimonji10/orgs","repos_url":"https://api.github.com/users/Ichimonji10/repos","events_url":"https://api.github.com/users/Ichimonji10/events{/privacy}","received_events_url":"https://api.github.com/users/Ichimonji10/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/SatelliteQE/robottelo/labels/API","name":"API","color":"fbca04"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-06-13T19:31:51Z","updated_at":"2015-06-19T08:10:55Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/pulls/2441","html_url":"https://github.com/SatelliteQE/robottelo/pull/2441","diff_url":"https://github.com/SatelliteQE/robottelo/pull/2441.diff","patch_url":"https://github.com/SatelliteQE/robottelo/pull/2441.patch"},"body":"Update to NailGun 0.17.0. Use the updates therein and updates provided by\r\nprevious releases to update nearly every single API test module. Review existing\r\ntests and make them use higher-level methods when possible. For example:\r\n\r\n* Use the `create` method instead of the `create_json` method.\r\n* Use the `update` method instead of the `client.put` function.\r\n\r\nDo not update module `tests.foreman.api.test_multiple_paths`. It is in need of\r\nan update on several levels, and an update to it will come in a separarate pull\r\nrequest. Test results against a downstream RHEL 6.6 system:\r\n\r\n    $ make test-foreman-api-threaded\r\n    python -m cProfile -o test-foreman-api-threaded.pstats $(which nosetests) --logging-filter=nailgun,robottelo --with-xunit --xunit-file=foreman-results.xml tests/foreman/api\\\r\n        --processes=-1 --process-timeout=300\r\n    ....SSS.....................S.........EEE..E..EE................E.......SSSSSSSSSSSSSSSSSSSSSSSS........SSSSSSSSSSSSSSSSSSSSSSS.SS.............SSSS..SSSSSSSSS...........S.SSSSSSSESSSSSS................................................S.........SSSSSSSSSSSSS...S..S...S..SSS.SSSSSSS.................SSSSSSSS......S..S.......S.........................................................................SS.....................................................................................S...............................................................SSSSS.S.SSSSSSSS.S..SSS.S..SSSSSSSSSSSSSSSSSSSSSSSSSSSSS..................S....S........................................................S...............E..........................................SSSSSSSS..EESSSSSSSSSSSSSSSSSSSSSSSSSSSSSS.S.S.SS.SSSSSSSSSSSSSSSSSSSSSS.............................................\r\n    ======================================================================\r\n    ERROR: @Test: Give a content view yum packages and publish it repeatedly.\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 377, in test_positive_publish_2\r\n        content_view.publish()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1138, in publish\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task dc73a51f-d071-4996-84be-3c5c0e6b5110 completed with result error. Error message(s): [u'ERF12-4115 [ProxyAPI::ProxyException]: Unable to get classes from Puppet for KT_d79c4b77_bfda_4ef6_aa43_71051c6b2d38_Library_9b32b146_c5c2_4569_9ed2_bb842ee79b51_1005 ([RestClient::NotAcceptable]: 406 Not Acceptable) for proxy https://sat.example.com:9090/puppet']\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Create empty composite view and assign random number of\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 734, in test_promote_composite_cv_once_2\r\n        self.add_content_views_to_composite(composite_cv, random.randint(3, 5))\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 338, in add_content_views_to_composite\r\n        content_view.publish()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1138, in publish\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task e6768ea2-35fb-4a77-92b9-b28f232022fb completed with result error. Error message(s): [u'ERF12-2749 [ProxyAPI::ProxyException]: Unable to get environments from Puppet ([RestClient::NotAcceptable]: 406 Not Acceptable) for proxy https://sat.example.com:9090/puppet']\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Create empty composite view and assign one normal content\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 713, in test_promote_composite_cv_once_1\r\n        entities.LifecycleEnvironment(organization=self.org).create().id\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 881, in promote\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task c6905800-dc47-4fbb-bc6b-3c7f21d4083a completed with result error. Error message(s): [u'ERF12-4115 [ProxyAPI::ProxyException]: Unable to get classes from Puppet for KT_70b2a010_e99a_4bba_a329_aa0f0dff1435_7d31fa86_cfa2_47e4_bd08_f9c5a22f23d5_48f29524_1d64_4832_8559_0503976bd619_1012 ([RestClient::NotAcceptable]: 406 Not Acceptable) for proxy https://sat.example.com:9090/puppet']\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Give a content view a puppet module, publish it once and\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 628, in test_promote_cv_with_puppet_multiple\r\n        content_view.version[0].promote(lce.id)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 881, in promote\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task 0ab7f1ea-05e7-405e-92c8-90a098f5bfc0 completed with result error. Error message(s): [u'ERF12-2749 [ProxyAPI::ProxyException]: Unable to get environments from Puppet ([RestClient::NotAcceptable]: 406 Not Acceptable) for proxy https://sat.example.com:9090/puppet']\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Create empty composite view and assign random number of\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 795, in test_promote_composite_cv_multiple_2\r\n        composite_cv.version[0].promote(lce.id)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 881, in promote\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 95, in _poll_task\r\n        raise TaskTimedOutError('Timed out polling task {0}'.format(task_id))\r\n    TaskTimedOutError: Timed out polling task 9d98f25c-92d2-41ba-b68a-a31784aa8c19\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Publish a content view that has puppet module once.\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/plugins/multiprocess.py\", line 812, in run\r\n        test(orig)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/case.py\", line 45, in __call__\r\n        return self.run(*arg, **kwarg)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/case.py\", line 133, in run\r\n        self.runTest(result)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/case.py\", line 151, in runTest\r\n        test(result)\r\n    File \"/usr/lib64/python2.7/unittest/case.py\", line 395, in __call__\r\n        return self.run(*args, **kwds)\r\n    File \"/usr/lib64/python2.7/unittest/case.py\", line 331, in run\r\n        testMethod()\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 470, in test_publish_cv_with_puppet_once\r\n        content_view = entities.ContentView(organization=self.org).create()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 837, in create\r\n        return self.read(attrs=self.create_json(create_missing))\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 807, in create_json\r\n        response = self.create_raw(create_missing)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 792, in create_raw\r\n        **self._server_config.get_client_kwargs()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/client.py\", line 163, in post\r\n        response = requests.post(url, data, json, **kwargs)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/api.py\", line 109, in post\r\n        return request('post', url, data=data, json=json, **kwargs)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/api.py\", line 50, in request\r\n        response = session.request(method=method, url=url, **kwargs)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/sessions.py\", line 465, in request\r\n        resp = self.send(prep, **send_kwargs)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/sessions.py\", line 573, in send\r\n        r = adapter.send(request, **kwargs)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/adapters.py\", line 370, in send\r\n        timeout=timeout\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py\", line 544, in urlopen\r\n        body=body, headers=headers)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py\", line 341, in _make_request\r\n        self._validate_conn(conn)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py\", line 761, in _validate_conn\r\n        conn.connect()\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/connection.py\", line 204, in connect\r\n        conn = self._new_conn()\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/connection.py\", line 134, in _new_conn\r\n        (self.host, self.port), self.timeout, **extra_kw)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/packages/urllib3/util/connection.py\", line 78, in create_connection\r\n        sock.connect(sa)\r\n    File \"/usr/lib64/python2.7/socket.py\", line 228, in meth\r\n        return getattr(self._sock,name)(*args)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/plugins/multiprocess.py\", line 276, in signalhandler\r\n        raise TimedOutException()\r\n    TimedOutException: 'test_publish_cv_with_puppet_once (tests.foreman.api.test_contentview.CVPublishPromoteTestCase)'\r\n\r\n    ======================================================================\r\n    ERROR: test suite for <class 'tests.foreman.api.test_contentview.CVRedHatContent'>\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/plugins/multiprocess.py\", line 788, in run\r\n        self.setUp()\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/suite.py\", line 292, in setUp\r\n        self.setupContext(ancestor)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/plugins/multiprocess.py\", line 770, in setupContext\r\n        super(NoSharedFixtureContextSuite, self).setupContext(context)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/suite.py\", line 315, in setupContext\r\n        try_run(context, names)\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/nose/util.py\", line 471, in try_run\r\n        return func()\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentview.py\", line 870, in setUpClass\r\n        releasever='7Server',\r\n    File \"robottelo/api/utils.py\", line 118, in enable_rhrepo_and_fetchid\r\n        reposet_id = entities.Product(id=prd_id).fetch_reposet_id(name=reposet)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 2621, in fetch_reposet_id\r\n        \"The length of the results is:\", len(results))\r\n    APIResponseError: ('The length of the results is:', 0)\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Create and sync a Docker-type repository\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"robottelo/common/decorators.py\", line 375, in wrapper_func\r\n        return func(*args, **kwargs)\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_docker.py\", line 473, in test_add_synced_docker_repo_to_content_view\r\n        repo.sync()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 2868, in sync\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 87, in _poll_task\r\n        response.raise_for_status()\r\n    File \"/home/ichimonji10/.virtualenvs/robottelo/lib/python2.7/site-packages/requests/models.py\", line 851, in raise_for_status\r\n        raise HTTPError(http_error_msg, response=self)\r\n    HTTPError: 500 Server Error: Internal Server Error\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Sync RedHat Repository.\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_repository.py\", line 257, in test_redhat_sync_1\r\n        '7Server',\r\n    File \"robottelo/api/utils.py\", line 118, in enable_rhrepo_and_fetchid\r\n        reposet_id = entities.Product(id=prd_id).fetch_reposet_id(name=reposet)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 2621, in fetch_reposet_id\r\n        \"The length of the results is:\", len(results))\r\n    APIResponseError: ('The length of the results is:', 0)\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Upload a manifest.\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_subscription.py\", line 26, in test_positive_create_1\r\n        org.upload_manifest(path=cloned_manifest_path)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 2250, in upload_manifest\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task 2dd5a134-61f8-466e-8784-3f6f1c1a47e2 completed with result warning. Error message(s): [u'Runtime Error ERROR: deadlock detected\\n  Detail: Process 2388 waits for ShareLock on transaction 466557; blocked by process 16991.\\nProcess 16991 waits for ExclusiveLock on tuple (5,1) of relation 16581 of database 16387; blocked by process 2388.\\n  Hint: See server log for query details. at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse:2,094']\r\n\r\n    ======================================================================\r\n    ERROR: @Test: Upload the same manifest to two organizations.\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_subscription.py\", line 53, in test_negative_create_1\r\n        orgs[0].upload_manifest(manifest_path)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 2250, in upload_manifest\r\n        return _handle_response(response, self._server_config, synchronous)\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 105, in _handle_response\r\n        return ForemanTask(server_config, id=response.json()['id']).poll()\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entities.py\", line 1416, in poll\r\n        timeout\r\n    File \"/home/ichimonji10/code/nailgun/nailgun/entity_mixins.py\", line 105, in _poll_task\r\n        task_info['humanized']['errors']\r\n    TaskFailedError: Task 978ed730-607f-4fe9-a29f-30298729384a completed with result warning. Error message(s): [u'Runtime Error Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1 at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched:81']\r\n\r\n    ======================================================================\r\n    FAIL: @Test: Delete a content-view version associated to 'Library'\r\n    ----------------------------------------------------------------------\r\n    Traceback (most recent call last):\r\n    File \"/home/ichimonji10/code/robottelo/tests/foreman/api/test_contentviewversion.py\", line 69, in test_delete_version\r\n        self.assertEqual(content_view.version[0].id, 1)\r\n    AssertionError: 969 != 1\r\n\r\n    ----------------------------------------------------------------------\r\n    Ran 858 tests in 1987.516s\r\n\r\n    FAILED (SKIP=236, errors=11)\r\n\r\nFile several bugs and consequently fix several Jenkins failures. See:\r\n\r\n* https://bugzilla.redhat.com/show_bug.cgi?id=1230865\r\n* https://bugzilla.redhat.com/show_bug.cgi?id=1230873\r\n* https://bugzilla.redhat.com/show_bug.cgi?id=1230902"},"comment":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/comments/113426299","html_url":"https://github.com/SatelliteQE/robottelo/pull/2441#issuecomment-113426299","issue_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/2441","id":113426299,"user":{"login":"oshtaier","id":10895065,"avatar_url":"https://avatars.githubusercontent.com/u/10895065?v=3","gravatar_id":"","url":"https://api.github.com/users/oshtaier","html_url":"https://github.com/oshtaier","followers_url":"https://api.github.com/users/oshtaier/followers","following_url":"https://api.github.com/users/oshtaier/following{/other_user}","gists_url":"https://api.github.com/users/oshtaier/gists{/gist_id}","starred_url":"https://api.github.com/users/oshtaier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oshtaier/subscriptions","organizations_url":"https://api.github.com/users/oshtaier/orgs","repos_url":"https://api.github.com/users/oshtaier/repos","events_url":"https://api.github.com/users/oshtaier/events{/privacy}","received_events_url":"https://api.github.com/users/oshtaier/received_events","type":"User","site_admin":false},"created_at":"2015-06-19T08:10:55Z","updated_at":"2015-06-19T08:10:55Z","body":"ACK again. Pending my last question, tests results that proves that we do not introduce regression and of course nailgun new version mentioned by @elyezer "}}