)]}'
{"tempest/api/volume/base.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"36ce587a64f3a880f79951a5c7651e029a29e67e","unresolved":false,"context_lines":[{"line_number":151,"context_line":"        return snapshot"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    def create_backup(self, volume_id, backup_client\u003dNone,"},{"line_number":154,"context_line":"                      wait_for_deletion\u003dNone, **kwargs):"},{"line_number":155,"context_line":"        \"\"\"Wrapper utility that returns a test backup.\"\"\""},{"line_number":156,"context_line":"        if backup_client is None:"},{"line_number":157,"context_line":"            backup_client \u003d self.backups_client"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a430d35_35d2105d","line":154,"range":{"start_line":154,"start_character":40,"end_line":154,"end_character":44},"updated":"2017-02-07 08:19:50.000000000","message":"will it look better to use False?","commit_id":"ccbb3f3faf370fd10969403bc861501c38128bac"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"72cbdeac9b0fbcc2597c567b3bb3e5fb5894db3a","unresolved":false,"context_lines":[{"line_number":151,"context_line":"        return snapshot"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    def create_backup(self, volume_id, backup_client\u003dNone,"},{"line_number":154,"context_line":"                      wait_for_deletion\u003dNone, **kwargs):"},{"line_number":155,"context_line":"        \"\"\"Wrapper utility that returns a test backup.\"\"\""},{"line_number":156,"context_line":"        if backup_client is None:"},{"line_number":157,"context_line":"            backup_client \u003d self.backups_client"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a430d35_95ae6496","line":154,"range":{"start_line":154,"start_character":40,"end_line":154,"end_character":44},"in_reply_to":"1a430d35_35d2105d","updated":"2017-02-07 08:31:45.000000000","message":"Yes, thanks","commit_id":"ccbb3f3faf370fd10969403bc861501c38128bac"}],"tempest/api/volume/test_volumes_backup.py":[{"author":{"_account_id":23003,"name":"Gal Amado","email":"gamado@redhat.com","username":"gamado"},"change_message_id":"f7a6b746b7e7ca42de98b58dabad59da656cd291","unresolved":false,"context_lines":[{"line_number":132,"context_line":"        volume \u003d self.create_volume()"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"        # Create a backup"},{"line_number":135,"context_line":"        backup \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"        backup_info \u003d self.backups_client.show_backup(backup[\u0027id\u0027])[\u0027backup\u0027]"},{"line_number":138,"context_line":"        self.assertEqual(False, backup_info[\u0027has_dependent_backups\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a430d35_f0988cc2","line":135,"range":{"start_line":135,"start_character":8,"end_line":135,"end_character":14},"updated":"2017-02-07 12:46:33.000000000","message":"align to backup1/backup2 or parent/sun","commit_id":"f183ed7cdd1630c712bc12a369ce1bb7efb70696"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"7f037dfe5df4b0301210c11db520332818abd482","unresolved":false,"context_lines":[{"line_number":132,"context_line":"        volume \u003d self.create_volume()"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"        # Create a backup"},{"line_number":135,"context_line":"        backup \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"        backup_info \u003d self.backups_client.show_backup(backup[\u0027id\u0027])[\u0027backup\u0027]"},{"line_number":138,"context_line":"        self.assertEqual(False, backup_info[\u0027has_dependent_backups\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a430d35_b0e524dd","line":135,"range":{"start_line":135,"start_character":8,"end_line":135,"end_character":14},"in_reply_to":"1a430d35_f0988cc2","updated":"2017-02-07 13:04:14.000000000","message":"Thanks I\u0027ll rename it to backup1","commit_id":"f183ed7cdd1630c712bc12a369ce1bb7efb70696"},{"author":{"_account_id":23003,"name":"Gal Amado","email":"gamado@redhat.com","username":"gamado"},"change_message_id":"f7a6b746b7e7ca42de98b58dabad59da656cd291","unresolved":false,"context_lines":[{"line_number":134,"context_line":"        # Create a backup"},{"line_number":135,"context_line":"        backup \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"        backup_info \u003d self.backups_client.show_backup(backup[\u0027id\u0027])[\u0027backup\u0027]"},{"line_number":138,"context_line":"        self.assertEqual(False, backup_info[\u0027has_dependent_backups\u0027])"},{"line_number":139,"context_line":"        self.assertEqual(False, backup_info[\u0027is_incremental\u0027])"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"        # Create a incremental backup"},{"line_number":142,"context_line":"        backup2 \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a430d35_30b8542a","line":139,"range":{"start_line":137,"start_character":0,"end_line":139,"end_character":62},"updated":"2017-02-07 12:46:33.000000000","message":"Does it make sense to add a helper method? something like,\n\ndef _validate_backup_params(backup_id, params):\n            backup_info \u003d     self.backups_client.show_backup(backup_id)[\u0027backup\u0027]\n     for key, val in params:         \n        self.assertEqual(val, backup_info[key])\n\n\nAnd call it with :\nself._validate_backup_params(backup[\u0027id\u0027],{\u0027has_dependent_backups\u0027: False,\u0027is_incremental\u0027: False })","commit_id":"f183ed7cdd1630c712bc12a369ce1bb7efb70696"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"7f037dfe5df4b0301210c11db520332818abd482","unresolved":false,"context_lines":[{"line_number":134,"context_line":"        # Create a backup"},{"line_number":135,"context_line":"        backup \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"        backup_info \u003d self.backups_client.show_backup(backup[\u0027id\u0027])[\u0027backup\u0027]"},{"line_number":138,"context_line":"        self.assertEqual(False, backup_info[\u0027has_dependent_backups\u0027])"},{"line_number":139,"context_line":"        self.assertEqual(False, backup_info[\u0027is_incremental\u0027])"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"        # Create a incremental backup"},{"line_number":142,"context_line":"        backup2 \u003d self.create_backup(volume_id\u003dvolume[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":5,"id":"1a430d35_334a1e56","line":139,"range":{"start_line":137,"start_character":0,"end_line":139,"end_character":62},"in_reply_to":"1a430d35_30b8542a","updated":"2017-02-07 13:04:14.000000000","message":"I think it\u0027s better to leave it as it is","commit_id":"f183ed7cdd1630c712bc12a369ce1bb7efb70696"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"f4df243db3bbfbc1c1e6793b340c9857ec3e56ba","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        The incremental backup is based on a parent backup which is an"},{"line_number":127,"context_line":"        existing backup with the latest timestamp."},{"line_number":128,"context_line":"        The parent backup can be a full backup or an incremental backup"},{"line_number":129,"context_line":"        depending on the timestamp."},{"line_number":130,"context_line":"        \"\"\""},{"line_number":131,"context_line":"        # Create a volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa31d9ce_3afebb38","line":128,"range":{"start_line":128,"start_character":8,"end_line":128,"end_character":71},"updated":"2017-02-13 03:17:42.000000000","message":"it seems the testcase doesn\u0027t cover both the situations?","commit_id":"785fb0538d46c932f89bb6eed72f7d963ca4c232"},{"author":{"_account_id":19262,"name":"Liron Kuchlani","email":"lkuchlan@redhat.com","username":"lkuchlan"},"change_message_id":"d019a07d822441884d3fd6c34eaa12ac81146dc8","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        The incremental backup is based on a parent backup which is an"},{"line_number":127,"context_line":"        existing backup with the latest timestamp."},{"line_number":128,"context_line":"        The parent backup can be a full backup or an incremental backup"},{"line_number":129,"context_line":"        depending on the timestamp."},{"line_number":130,"context_line":"        \"\"\""},{"line_number":131,"context_line":"        # Create a volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa31d9ce_b65e3fe7","line":128,"range":{"start_line":128,"start_character":8,"end_line":128,"end_character":71},"in_reply_to":"fa31d9ce_3afebb38","updated":"2017-02-13 08:25:29.000000000","message":"Right, It\u0027s a general sentence, the full backup situation is already covered. This testcase covers the incremental backup situation as described in the title.","commit_id":"785fb0538d46c932f89bb6eed72f7d963ca4c232"}]}
