)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sergey Skripnick \u003csskripnick@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-05-18 11:57:29 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add missing tests for nova.db.api.network_*."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added new tests for nova.db.api.network_*."},{"line_number":10,"context_line":"Moved existent tests for nova.db.api.network_* into NetworkTestCase."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAPH%2F%2F8Yw%3D","line":7,"updated":"2013-05-18 09:23:31.000000000","message":"probably it will be better to call it \n\nAdd missing tests for db.api.network_* tests\n\nAlso you shouldn\u0027t use dot at end of commit title","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"976c7a227490b7cde76c4ad5ae3850c977927bbd","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Moved existent tests for nova.db.api.network_* into NetworkTestCase."},{"line_number":11,"context_line":"Removed unused and invalid method network_get_all_by_instance()."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"blueprint test-db-api"},{"line_number":14,"context_line":"work in progress"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ib06135138d846f50f1aad1277afadf7639522226"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"AAAAPH%2F%2F69I%3D","line":13,"updated":"2013-05-20 08:51:01.000000000","message":"db-api-tests not test-db-api","commit_id":"b24223411986f6b19fb0556b1ccfa23adada5b95"},{"author":{"_account_id":5652,"name":"David Ripton","email":"dripton@redhat.com","username":"dripton"},"change_message_id":"a57db186049dac97d24e7bed2b679a03c7605dc0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add missing tests for db.api.network_* methods"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added new tests for nova.db.api.network_* methods."},{"line_number":10,"context_line":"Moved existent tests for nova.db.api.network_* into NetworkTestCase."},{"line_number":11,"context_line":"Removed unused and invalid method network_get_all_by_instance()."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"blueprint db-api-tests"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"AAAAPH%2F%2FwSo%3D","line":10,"updated":"2013-05-23 19:50:07.000000000","message":"s/existent/existing/","commit_id":"8989f55756735c670590e15f90b0e772b6d3d146"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"da06e675523fa302d4b5c6520a9e57c2e70cb2fb","unresolved":false,"context_lines":[{"line_number":11,"context_line":"Removed unused and invalid method network_get_all_by_instance()."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"blueprint test-db-api"},{"line_number":14,"context_line":"work in progress"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ib06135138d846f50f1aad1277afadf7639522226"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"AAAAPX%2F%2FvHI%3D","line":14,"updated":"2013-06-11 17:45:58.000000000","message":"Work in Progress?","commit_id":"e5c09d122a77c140b939952bb436bd85a3ae3aca"}],"nova/tests/test_db_api.py":[{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"45d760b6a596d8577c83a13d2a9855f63e6f9080","unresolved":false,"context_lines":[{"line_number":3722,"context_line":"    def test_network_create_safe(self):"},{"line_number":3723,"context_line":"        values \u003d {\u0027host\u0027: \u0027localhost\u0027, \u0027project_id\u0027: \u0027project1\u0027}"},{"line_number":3724,"context_line":"        network \u003d db.network_create_safe(self.ctxt, values)"},{"line_number":3725,"context_line":"        self.assertEqual(36, len(network[\u0027uuid\u0027]))"},{"line_number":3726,"context_line":"        db_network \u003d db.network_get(self.ctxt, network[\u0027id\u0027])"},{"line_number":3727,"context_line":"        self.assertEqual(network[\u0027uuid\u0027], db_network[\u0027uuid\u0027])"},{"line_number":3728,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPH%2F%2F%2Bxg%3D","line":3725,"updated":"2013-05-17 08:28:30.000000000","message":"what do you mean by `magic` digit 36?","commit_id":"35511fff3b78db28783c77ea570ffe95b365e673"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"45d760b6a596d8577c83a13d2a9855f63e6f9080","unresolved":false,"context_lines":[{"line_number":3724,"context_line":"        network \u003d db.network_create_safe(self.ctxt, values)"},{"line_number":3725,"context_line":"        self.assertEqual(36, len(network[\u0027uuid\u0027]))"},{"line_number":3726,"context_line":"        db_network \u003d db.network_get(self.ctxt, network[\u0027id\u0027])"},{"line_number":3727,"context_line":"        self.assertEqual(network[\u0027uuid\u0027], db_network[\u0027uuid\u0027])"},{"line_number":3728,"context_line":""},{"line_number":3729,"context_line":"    def test_network_update_with_duplicate_vlan(self):"},{"line_number":3730,"context_line":"        values1 \u003d {\u0027host\u0027: \u0027localhost\u0027, \u0027project_id\u0027: \u0027project1\u0027, \u0027vlan\u0027: 1}"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPH%2F%2F%2BxU%3D","line":3727,"updated":"2013-05-17 08:28:30.000000000","message":"why do you compare only `uuid` instead of instances? \nPlease look at similarly comparing (`id` instead of instances) below.","commit_id":"35511fff3b78db28783c77ea570ffe95b365e673"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"45d760b6a596d8577c83a13d2a9855f63e6f9080","unresolved":false,"context_lines":[{"line_number":3801,"context_line":"        self.assertEqual(db.network_in_use_on_host(self.ctxt, 1, \u0027foo\u0027), True)"},{"line_number":3802,"context_line":"        self.assertEqual(db.network_in_use_on_host(self.ctxt, 1, \u0027bar\u0027), False)"},{"line_number":3803,"context_line":""},{"line_number":3804,"context_line":"    def test_network_get_all_by_host(self):"},{"line_number":3805,"context_line":"        data \u003d db.network_get_all_by_host(self.ctxt, \u0027foo\u0027)"},{"line_number":3806,"context_line":"        self.assertEqual(len(data), 0)"},{"line_number":3807,"context_line":"        # dummy network"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPH%2F%2F%2BxQ%3D","line":3804,"updated":"2013-05-17 08:28:30.000000000","message":"As I can see you call `network_create_safe` and then check count of `network` models. Maybe there is a sense to use loop here?","commit_id":"35511fff3b78db28783c77ea570ffe95b365e673"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3730,"context_line":"        return network, instance"},{"line_number":3731,"context_line":""},{"line_number":3732,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3733,"context_line":"        network, _ \u003d self._get_associated_fixed_ip(\u0027host.net\u0027, \u0027192.0.2.0/30\u0027,"},{"line_number":3734,"context_line":"            \u0027192.0.2.1\u0027)"},{"line_number":3735,"context_line":"        self.assertTrue(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3736,"context_line":"            \u0027host.net\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8Zk%3D","line":3733,"updated":"2013-05-18 09:23:31.000000000","message":"never use _ as variable, it is used for localization for example\n\n  _(\"some msg\")","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3730,"context_line":"        return network, instance"},{"line_number":3731,"context_line":""},{"line_number":3732,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3733,"context_line":"        network, _ \u003d self._get_associated_fixed_ip(\u0027host.net\u0027, \u0027192.0.2.0/30\u0027,"},{"line_number":3734,"context_line":"            \u0027192.0.2.1\u0027)"},{"line_number":3735,"context_line":"        self.assertTrue(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3736,"context_line":"            \u0027host.net\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8R8%3D","line":3733,"in_reply_to":"AAAAPH%2F%2F8Zk%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3731,"context_line":""},{"line_number":3732,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3733,"context_line":"        network, _ \u003d self._get_associated_fixed_ip(\u0027host.net\u0027, \u0027192.0.2.0/30\u0027,"},{"line_number":3734,"context_line":"            \u0027192.0.2.1\u0027)"},{"line_number":3735,"context_line":"        self.assertTrue(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3736,"context_line":"            \u0027host.net\u0027))"},{"line_number":3737,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8Zg%3D","line":3734,"updated":"2013-05-18 09:23:31.000000000","message":"align this value with \u0027host.net\u0027","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3731,"context_line":""},{"line_number":3732,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3733,"context_line":"        network, _ \u003d self._get_associated_fixed_ip(\u0027host.net\u0027, \u0027192.0.2.0/30\u0027,"},{"line_number":3734,"context_line":"            \u0027192.0.2.1\u0027)"},{"line_number":3735,"context_line":"        self.assertTrue(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3736,"context_line":"            \u0027host.net\u0027))"},{"line_number":3737,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8R4%3D","line":3734,"in_reply_to":"AAAAPH%2F%2F8Zg%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3733,"context_line":"        network, _ \u003d self._get_associated_fixed_ip(\u0027host.net\u0027, \u0027192.0.2.0/30\u0027,"},{"line_number":3734,"context_line":"            \u0027192.0.2.1\u0027)"},{"line_number":3735,"context_line":"        self.assertTrue(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3736,"context_line":"            \u0027host.net\u0027))"},{"line_number":3737,"context_line":""},{"line_number":3738,"context_line":"    def test_network_get_associated_fixed_ips(self):"},{"line_number":3739,"context_line":"        network, instance \u003d self._get_associated_fixed_ip(\u0027host.net\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8Zc%3D","line":3736,"updated":"2013-05-18 09:23:31.000000000","message":"same here","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3739,"context_line":"        network, instance \u003d self._get_associated_fixed_ip(\u0027host.net\u0027,"},{"line_number":3740,"context_line":"            \u0027192.0.2.0/30\u0027, \u0027192.0.2.1\u0027)"},{"line_number":3741,"context_line":"        data \u003d db.network_get_associated_fixed_ips(self.ctxt, network.id)"},{"line_number":3742,"context_line":"        self.assertEqual(1, len(data))"},{"line_number":3743,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027address\u0027])"},{"line_number":3744,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027vif_address\u0027])"},{"line_number":3745,"context_line":"        self.assertEqual(instance.uuid, data[0][\u0027instance_uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZU%3D","line":3742,"updated":"2013-05-18 09:23:31.000000000","message":"why do you don\u0027t use here _assertEqualObjects?","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3739,"context_line":"        network, instance \u003d self._get_associated_fixed_ip(\u0027host.net\u0027,"},{"line_number":3740,"context_line":"            \u0027192.0.2.0/30\u0027, \u0027192.0.2.1\u0027)"},{"line_number":3741,"context_line":"        data \u003d db.network_get_associated_fixed_ips(self.ctxt, network.id)"},{"line_number":3742,"context_line":"        self.assertEqual(1, len(data))"},{"line_number":3743,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027address\u0027])"},{"line_number":3744,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027vif_address\u0027])"},{"line_number":3745,"context_line":"        self.assertEqual(instance.uuid, data[0][\u0027instance_uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8TE%3D","line":3742,"in_reply_to":"AAAAPH%2F%2F8ZU%3D","updated":"2013-05-20 07:52:28.000000000","message":"db.network_get_associated_fixed_ips returns custom dictionary instead of object.","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3756,"context_line":"        values1 \u003d {\u0027host\u0027: \u0027localhost\u0027, \u0027project_id\u0027: \u0027project1\u0027, \u0027vlan\u0027: 1}"},{"line_number":3757,"context_line":"        values2 \u003d {\u0027host\u0027: \u0027something\u0027, \u0027project_id\u0027: \u0027project1\u0027, \u0027vlan\u0027: 1}"},{"line_number":3758,"context_line":"        db.network_create_safe(self.ctxt, values1)"},{"line_number":3759,"context_line":"        self.assertRaises(exception.DuplicateVlan,"},{"line_number":3760,"context_line":"                          db.network_create_safe, self.ctxt, values2)"},{"line_number":3761,"context_line":""},{"line_number":3762,"context_line":"    def test_network_delete_safe(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8Y8%3D","line":3759,"updated":"2013-05-18 09:23:31.000000000","message":"one minor nit that could be here upgradet... After \nDelete -\u003e create with same vlan doesn\u0027t raise this exception..","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3756,"context_line":"        values1 \u003d {\u0027host\u0027: \u0027localhost\u0027, \u0027project_id\u0027: \u0027project1\u0027, \u0027vlan\u0027: 1}"},{"line_number":3757,"context_line":"        values2 \u003d {\u0027host\u0027: \u0027something\u0027, \u0027project_id\u0027: \u0027project1\u0027, \u0027vlan\u0027: 1}"},{"line_number":3758,"context_line":"        db.network_create_safe(self.ctxt, values1)"},{"line_number":3759,"context_line":"        self.assertRaises(exception.DuplicateVlan,"},{"line_number":3760,"context_line":"                          db.network_create_safe, self.ctxt, values2)"},{"line_number":3761,"context_line":""},{"line_number":3762,"context_line":"    def test_network_delete_safe(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8S4%3D","line":3759,"in_reply_to":"AAAAPH%2F%2F8Y8%3D","updated":"2013-05-20 07:52:28.000000000","message":"but network deletion is tested in another test","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3829,"context_line":"        network \u003d db.network_create_safe(self.ctxt, values)"},{"line_number":3830,"context_line":"        self.assertEqual("},{"line_number":3831,"context_line":"            db.network_set_host(self.ctxt, network.id, \u0027example.com\u0027),"},{"line_number":3832,"context_line":"            \u0027example.com\u0027)"},{"line_number":3833,"context_line":"        self.assertEqual(\u0027example.com\u0027,"},{"line_number":3834,"context_line":"            db.network_get(self.ctxt, network.id).host)"},{"line_number":3835,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZM%3D","line":3832,"updated":"2013-05-18 09:23:31.000000000","message":"align..","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3829,"context_line":"        network \u003d db.network_create_safe(self.ctxt, values)"},{"line_number":3830,"context_line":"        self.assertEqual("},{"line_number":3831,"context_line":"            db.network_set_host(self.ctxt, network.id, \u0027example.com\u0027),"},{"line_number":3832,"context_line":"            \u0027example.com\u0027)"},{"line_number":3833,"context_line":"        self.assertEqual(\u0027example.com\u0027,"},{"line_number":3834,"context_line":"            db.network_get(self.ctxt, network.id).host)"},{"line_number":3835,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8SA%3D","line":3832,"in_reply_to":"AAAAPH%2F%2F8ZM%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3831,"context_line":"            db.network_set_host(self.ctxt, network.id, \u0027example.com\u0027),"},{"line_number":3832,"context_line":"            \u0027example.com\u0027)"},{"line_number":3833,"context_line":"        self.assertEqual(\u0027example.com\u0027,"},{"line_number":3834,"context_line":"            db.network_get(self.ctxt, network.id).host)"},{"line_number":3835,"context_line":""},{"line_number":3836,"context_line":"    def test_network_get_all_by_host(self):"},{"line_number":3837,"context_line":"        self.assertEqual([],"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZQ%3D","line":3834,"updated":"2013-05-18 09:23:31.000000000","message":"align pls it with \u0027example.com\u0027","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3831,"context_line":"            db.network_set_host(self.ctxt, network.id, \u0027example.com\u0027),"},{"line_number":3832,"context_line":"            \u0027example.com\u0027)"},{"line_number":3833,"context_line":"        self.assertEqual(\u0027example.com\u0027,"},{"line_number":3834,"context_line":"            db.network_get(self.ctxt, network.id).host)"},{"line_number":3835,"context_line":""},{"line_number":3836,"context_line":"    def test_network_get_all_by_host(self):"},{"line_number":3837,"context_line":"        self.assertEqual([],"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8SE%3D","line":3834,"in_reply_to":"AAAAPH%2F%2F8ZQ%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3844,"context_line":"        # network with fixed ip with host set"},{"line_number":3845,"context_line":"        net2 \u003d db.network_create_safe(self.ctxt, {})"},{"line_number":3846,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027host\u0027: host, \u0027network_id\u0027: net2.id})"},{"line_number":3847,"context_line":"        data \u003d db.network_get_all_by_host(self.ctxt, host)"},{"line_number":3848,"context_line":"        self._assertEqualListsOfObjects([net1, net2],"},{"line_number":3849,"context_line":"            db.network_get_all_by_host(self.ctxt, host))"},{"line_number":3850,"context_line":"        # network with instance with host set"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZI%3D","line":3847,"updated":"2013-05-18 09:23:31.000000000","message":"why data? probably it will be more clean if you call it \u0027networks\u0027..","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3844,"context_line":"        # network with fixed ip with host set"},{"line_number":3845,"context_line":"        net2 \u003d db.network_create_safe(self.ctxt, {})"},{"line_number":3846,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027host\u0027: host, \u0027network_id\u0027: net2.id})"},{"line_number":3847,"context_line":"        data \u003d db.network_get_all_by_host(self.ctxt, host)"},{"line_number":3848,"context_line":"        self._assertEqualListsOfObjects([net1, net2],"},{"line_number":3849,"context_line":"            db.network_get_all_by_host(self.ctxt, host))"},{"line_number":3850,"context_line":"        # network with instance with host set"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8Sk%3D","line":3847,"in_reply_to":"AAAAPH%2F%2F8ZI%3D","updated":"2013-05-20 07:52:28.000000000","message":"this line is unnecessary and must be deleted)","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3855,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027network_id\u0027: net3.id,"},{"line_number":3856,"context_line":"            \u0027virtual_interface_id\u0027: vif.id})"},{"line_number":3857,"context_line":"        self._assertEqualListsOfObjects([net1, net2, net3],"},{"line_number":3858,"context_line":"            db.network_get_all_by_host(self.ctxt, host))"},{"line_number":3859,"context_line":""},{"line_number":3860,"context_line":"    def test_network_get_by_cidr_nonexistent(self):"},{"line_number":3861,"context_line":"        self.assertRaises(exception.NetworkNotFoundForCidr,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZE%3D","line":3858,"updated":"2013-05-18 09:23:31.000000000","message":"Align.. and bellow also..","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3855,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027network_id\u0027: net3.id,"},{"line_number":3856,"context_line":"            \u0027virtual_interface_id\u0027: vif.id})"},{"line_number":3857,"context_line":"        self._assertEqualListsOfObjects([net1, net2, net3],"},{"line_number":3858,"context_line":"            db.network_get_all_by_host(self.ctxt, host))"},{"line_number":3859,"context_line":""},{"line_number":3860,"context_line":"    def test_network_get_by_cidr_nonexistent(self):"},{"line_number":3861,"context_line":"        self.assertRaises(exception.NetworkNotFoundForCidr,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8SI%3D","line":3858,"in_reply_to":"AAAAPH%2F%2F8ZE%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"071746fde20f431b19e289beeec1e2f3426e59d7","unresolved":false,"context_lines":[{"line_number":3939,"context_line":"        self.assertEqual(0, db.network_count_reserved_ips(self.ctxt, net.id))"},{"line_number":3940,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027network_id\u0027: net.id,"},{"line_number":3941,"context_line":"            \u0027reserved\u0027: True})"},{"line_number":3942,"context_line":"        self.assertEqual(1, db.network_count_reserved_ips(self.ctxt, net.id))"},{"line_number":3943,"context_line":""},{"line_number":3944,"context_line":""},{"line_number":3945,"context_line":"class KeyPairTestCase(test.TestCase, ModelsObjectComparatorMixin):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8ZA%3D","line":3942,"updated":"2013-05-18 09:23:31.000000000","message":"probably you should test also for 2 reserved ips, and also when you have 3 fixedIp but 1 of them is not reseverved.","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"ac75f0c1dab53e618211863d72cc62eabb6c44bd","unresolved":false,"context_lines":[{"line_number":3939,"context_line":"        self.assertEqual(0, db.network_count_reserved_ips(self.ctxt, net.id))"},{"line_number":3940,"context_line":"        db.fixed_ip_create(self.ctxt, {\u0027network_id\u0027: net.id,"},{"line_number":3941,"context_line":"            \u0027reserved\u0027: True})"},{"line_number":3942,"context_line":"        self.assertEqual(1, db.network_count_reserved_ips(self.ctxt, net.id))"},{"line_number":3943,"context_line":""},{"line_number":3944,"context_line":""},{"line_number":3945,"context_line":"class KeyPairTestCase(test.TestCase, ModelsObjectComparatorMixin):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPH%2F%2F8SM%3D","line":3942,"in_reply_to":"AAAAPH%2F%2F8ZA%3D","updated":"2013-05-20 07:52:28.000000000","message":"Done","commit_id":"ed53009dc8f10dcabfd6f40e12c50f34d1774802"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"634499966f118d37615b56961628128c5121a82b","unresolved":false,"context_lines":[{"line_number":3718,"context_line":"        self.assertFalse(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3719,"context_line":"            host))"},{"line_number":3720,"context_line":"        instance \u003d db.instance_create(self.ctxt,"},{"line_number":3721,"context_line":"            {\u0027project_id\u0027: \u0027project1\u0027, \u0027host\u0027: host})"},{"line_number":3722,"context_line":"        virtual_interface \u003d db.virtual_interface_create(self.ctxt,"},{"line_number":3723,"context_line":"            {\u0027instance_uuid\u0027: instance.uuid, \u0027network_id\u0027: network.id,"},{"line_number":3724,"context_line":"            \u0027address\u0027: ip})"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7nI%3D","line":3721,"updated":"2013-05-19 15:06:42.000000000","message":"align pls, here and below..","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"5bda855cb110bdfda8a975682abe5712cb417761","unresolved":false,"context_lines":[{"line_number":3718,"context_line":"        self.assertFalse(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3719,"context_line":"            host))"},{"line_number":3720,"context_line":"        instance \u003d db.instance_create(self.ctxt,"},{"line_number":3721,"context_line":"            {\u0027project_id\u0027: \u0027project1\u0027, \u0027host\u0027: host})"},{"line_number":3722,"context_line":"        virtual_interface \u003d db.virtual_interface_create(self.ctxt,"},{"line_number":3723,"context_line":"            {\u0027instance_uuid\u0027: instance.uuid, \u0027network_id\u0027: network.id,"},{"line_number":3724,"context_line":"            \u0027address\u0027: ip})"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7Dw%3D","line":3721,"in_reply_to":"AAAAPH%2F%2F7nI%3D","updated":"2013-05-20 07:22:16.000000000","message":"Done","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"634499966f118d37615b56961628128c5121a82b","unresolved":false,"context_lines":[{"line_number":3740,"context_line":"                                            \u0027192.0.2.0/30\u0027, \u0027192.0.2.1\u0027)"},{"line_number":3741,"context_line":"        data \u003d db.network_get_associated_fixed_ips(self.ctxt, network.id)"},{"line_number":3742,"context_line":"        self.assertEqual(1, len(data))"},{"line_number":3743,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027address\u0027])"},{"line_number":3744,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027vif_address\u0027])"},{"line_number":3745,"context_line":"        self.assertEqual(instance.uuid, data[0][\u0027instance_uuid\u0027])"},{"line_number":3746,"context_line":"        self.assertTrue(data[0][\u0027allocated\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7nE%3D","line":3743,"updated":"2013-05-19 15:06:42.000000000","message":"Could you pls create values that you are putting in _get_associated_fixed_ip and use here assertEqualObject instead of tons of assertEqual..","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"5bda855cb110bdfda8a975682abe5712cb417761","unresolved":false,"context_lines":[{"line_number":3740,"context_line":"                                            \u0027192.0.2.0/30\u0027, \u0027192.0.2.1\u0027)"},{"line_number":3741,"context_line":"        data \u003d db.network_get_associated_fixed_ips(self.ctxt, network.id)"},{"line_number":3742,"context_line":"        self.assertEqual(1, len(data))"},{"line_number":3743,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027address\u0027])"},{"line_number":3744,"context_line":"        self.assertEqual(\u0027192.0.2.1\u0027, data[0][\u0027vif_address\u0027])"},{"line_number":3745,"context_line":"        self.assertEqual(instance.uuid, data[0][\u0027instance_uuid\u0027])"},{"line_number":3746,"context_line":"        self.assertTrue(data[0][\u0027allocated\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7Do%3D","line":3743,"in_reply_to":"AAAAPH%2F%2F7nE%3D","updated":"2013-05-20 07:22:16.000000000","message":"network_get_associated_fixed_ips returns dict, not object","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"634499966f118d37615b56961628128c5121a82b","unresolved":false,"context_lines":[{"line_number":3779,"context_line":"        fixed_ip \u003d db.fixed_ip_get_by_address(ctxt, address1)"},{"line_number":3780,"context_line":"        self.assertTrue(fixed_ip[\u0027deleted\u0027])"},{"line_number":3781,"context_line":""},{"line_number":3782,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3783,"context_line":"        values \u003d {\u0027host\u0027: \u0027foo\u0027, \u0027hostname\u0027: \u0027myname\u0027}"},{"line_number":3784,"context_line":"        instance \u003d db.instance_create(self.ctxt, values)"},{"line_number":3785,"context_line":"        values \u003d {\u0027address\u0027: \u0027bar\u0027, \u0027instance_uuid\u0027: instance[\u0027uuid\u0027]}"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7m0%3D","line":3782,"updated":"2013-05-19 15:06:42.000000000","message":"on line 3732 you have the same test name method..","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"5bda855cb110bdfda8a975682abe5712cb417761","unresolved":false,"context_lines":[{"line_number":3779,"context_line":"        fixed_ip \u003d db.fixed_ip_get_by_address(ctxt, address1)"},{"line_number":3780,"context_line":"        self.assertTrue(fixed_ip[\u0027deleted\u0027])"},{"line_number":3781,"context_line":""},{"line_number":3782,"context_line":"    def test_network_in_use_on_host(self):"},{"line_number":3783,"context_line":"        values \u003d {\u0027host\u0027: \u0027foo\u0027, \u0027hostname\u0027: \u0027myname\u0027}"},{"line_number":3784,"context_line":"        instance \u003d db.instance_create(self.ctxt, values)"},{"line_number":3785,"context_line":"        values \u003d {\u0027address\u0027: \u0027bar\u0027, \u0027instance_uuid\u0027: instance[\u0027uuid\u0027]}"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAPH%2F%2F7Dk%3D","line":3782,"in_reply_to":"AAAAPH%2F%2F7m0%3D","updated":"2013-05-20 07:22:16.000000000","message":"Done","commit_id":"d80cc98c2c79bb6064dbf8a79de2e6354f49c4ff"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"49ea94987090ef68f776bbe624b8fc98d9592c6e","unresolved":false,"context_lines":[{"line_number":3716,"context_line":"    def _get_associated_fixed_ip(self, host, cidr, ip):"},{"line_number":3717,"context_line":"        network \u003d db.network_create_safe(self.ctxt, {\u0027project_id\u0027: \u0027project1\u0027,"},{"line_number":3718,"context_line":"                                                                \u0027cidr\u0027: cidr})"},{"line_number":3719,"context_line":"        self.assertFalse(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3720,"context_line":"                                                                        host))"},{"line_number":3721,"context_line":"        instance \u003d db.instance_create(self.ctxt, {\u0027project_id\u0027: \u0027project1\u0027,"},{"line_number":3722,"context_line":"                                                                \u0027host\u0027: host})"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAPH%2F%2F3vU%3D","line":3719,"updated":"2013-05-21 09:38:08.000000000","message":"don\u0027t use in private method assert // you should this only one time..","commit_id":"614a4599dc2bd3b8b32455ac9995d45e774fcf36"},{"author":{"_account_id":7369,"name":"Sergey Skripnick","email":"sskripnick@mirantis.com","username":"redixin"},"change_message_id":"8c28f9d327741c5d80760a1e156e59a3b0543e96","unresolved":false,"context_lines":[{"line_number":3716,"context_line":"    def _get_associated_fixed_ip(self, host, cidr, ip):"},{"line_number":3717,"context_line":"        network \u003d db.network_create_safe(self.ctxt, {\u0027project_id\u0027: \u0027project1\u0027,"},{"line_number":3718,"context_line":"                                                                \u0027cidr\u0027: cidr})"},{"line_number":3719,"context_line":"        self.assertFalse(db.network_in_use_on_host(self.ctxt, network.id,"},{"line_number":3720,"context_line":"                                                                        host))"},{"line_number":3721,"context_line":"        instance \u003d db.instance_create(self.ctxt, {\u0027project_id\u0027: \u0027project1\u0027,"},{"line_number":3722,"context_line":"                                                                \u0027host\u0027: host})"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAPH%2F%2F3mw%3D","line":3719,"in_reply_to":"AAAAPH%2F%2F3vU%3D","updated":"2013-05-21 10:56:13.000000000","message":"Done","commit_id":"614a4599dc2bd3b8b32455ac9995d45e774fcf36"}]}
