)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"3b214314d9a8b5cdb9b64e13d6c91d0e0b554abb","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     AgnesNM \u003cagnesndutamwaniki@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-07-05 18:50:02 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    Test for displayed volumes without attachments"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    A test to check that the \u0027Attached To\u0027 column in the Volumes table"},{"line_number":10,"context_line":"    displays a dash [-] when a particular volume is not attached"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"d1a47304_a7362c40","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":4},"updated":"2024-07-05 17:04:30.000000000","message":"These indentations are not necessary","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     AgnesNM \u003cagnesndutamwaniki@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-07-05 18:50:02 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    Test for displayed volumes without attachments"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    A test to check that the \u0027Attached To\u0027 column in the Volumes table"},{"line_number":10,"context_line":"    displays a dash [-] when a particular volume is not attached"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"01650d96_afffb7d4","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":4},"in_reply_to":"d1a47304_a7362c40","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"3b214314d9a8b5cdb9b64e13d6c91d0e0b554abb","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    Test for displayed volumes without attachments"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    A test to check that the \u0027Attached To\u0027 column in the Volumes table"},{"line_number":10,"context_line":"    displays a dash [-] when a particular volume is not attached"},{"line_number":11,"context_line":"    to any instances."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"d6471f1e_a9ac790a","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":4},"updated":"2024-07-05 17:04:30.000000000","message":"Same here","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"    Test for displayed volumes without attachments"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"    A test to check that the \u0027Attached To\u0027 column in the Volumes table"},{"line_number":10,"context_line":"    displays a dash [-] when a particular volume is not attached"},{"line_number":11,"context_line":"    to any instances."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"66cc9fac_65acb582","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":4},"in_reply_to":"d6471f1e_a9ac790a","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6f04565d5a4d4ba3e5fe98b8b44c54d940a20096","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"145d3e83_14234bb3","updated":"2024-07-02 09:19:32.000000000","message":"Excellent, just two small things to fix.","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"f9bb2f6f1cf318aef1d0fe60262fd9fda9b9a0af","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"5fff6044_c5d008bb","updated":"2024-07-05 17:03:17.000000000","message":"Please address the comments of the bot as well.","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"0e8a2a0b5ce7845282815c535041388fa61f4e35","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"c2e5290e_1fcdb2fd","updated":"2024-07-10 14:53:57.000000000","message":"I make a small change. Is there advantage to defining attachments as an attribute inside the volume mock?     \n\n    def test_attachment_column(self):\n        column \u003d volume_tables.AttachmentColumn(\"attachments\")\n        column.table \u003d mock.MagicMock()\n        column.table.request \u003d mock.MagicMock()\n        volume \u003d mock.MagicMock(attachments \u003d [])        \n        result \u003d column.get_raw_data(volume)\n        self.assertIsNone(result, None)","commit_id":"bf6feb535dfa2165bc438879a6370139211b101f"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"b3d89362df2602724d03400758d6153faf1f48e9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"2eed1810_ad068415","in_reply_to":"c2e5290e_1fcdb2fd","updated":"2024-07-10 14:55:15.000000000","message":"\u003e I made a small change @openstack@dopieralski.pl @t.v.ovtchinnikova@gmail.com. Is there advantage to defining attachments as an attribute inside the volume mock?     \n\u003e \n\u003e     def test_attachment_column(self):\n\u003e         column \u003d volume_tables.AttachmentColumn(\"attachments\")\n\u003e         column.table \u003d mock.MagicMock()\n\u003e         column.table.request \u003d mock.MagicMock()\n\u003e         volume \u003d mock.MagicMock(attachments \u003d [])        \n\u003e         result \u003d column.get_raw_data(volume)\n\u003e         self.assertIsNone(result, None)","commit_id":"bf6feb535dfa2165bc438879a6370139211b101f"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"f5176b0419112e206f07be8842ce933ff04bec1f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"407cc73f_48c564cc","updated":"2024-07-25 08:34:53.000000000","message":"LGTM","commit_id":"4a4155d96c82f378af7eabde5e13b8c70fc5a62d"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"92e94b69f95226d2116c816b544d1a0db74c5576","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"63a4d998_a649bccb","updated":"2024-07-11 15:12:27.000000000","message":"LGTM","commit_id":"4a4155d96c82f378af7eabde5e13b8c70fc5a62d"}],"openstack_dashboard/dashboards/project/volumes/tests.py":[{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"57d1df53031eaa605e877a19840e515b134c1aa0","unresolved":true,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":2,"id":"cbde876c_25dec143","line":57,"updated":"2024-06-26 15:42:54.000000000","message":"This will always be true, because you have just assigned it in the previous line.\n\nWhat you need to do is to write a test that checks the value passed in the the response\u0027s context, like the other tests in this class do.","commit_id":"c53b265f9560b43546de51a4ad63876073f21279"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"6310b1da786f36cb9f7a9e3d91a3365710d1e014","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":2,"id":"7374d7e4_e74649e1","line":57,"in_reply_to":"c7c5fb03_0ee92de2","updated":"2024-07-03 09:23:53.000000000","message":"Done","commit_id":"c53b265f9560b43546de51a4ad63876073f21279"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6f04565d5a4d4ba3e5fe98b8b44c54d940a20096","unresolved":true,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":2,"id":"c7c5fb03_0ee92de2","line":57,"in_reply_to":"cbde876c_25dec143","updated":"2024-07-02 09:19:32.000000000","message":"this is no longer needed","commit_id":"c53b265f9560b43546de51a4ad63876073f21279"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"5b33e8517cb50acb0a509e66f848670c38ffad52","unresolved":true,"context_lines":[{"line_number":221,"context_line":""},{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"8f2cbca4_b6024c36","line":224,"updated":"2024-07-02 09:33:46.000000000","message":"What is this condition supposed to test? It doesn\u0027t look right?","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"6310b1da786f36cb9f7a9e3d91a3365710d1e014","unresolved":true,"context_lines":[{"line_number":221,"context_line":""},{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"df938c48_8e017063","line":224,"in_reply_to":"8f2cbca4_b6024c36","updated":"2024-07-03 09:23:53.000000000","message":"In my understanding, the display on the attachment column follows this format: \n\"%(dev)s on %(instance)s\" \n\nI extracted the result of line 217 (for attachment in volume.attachments:) here: https://github.com/AgnesNM/OpenStack-Horizon/blob/main/volume_dot_attachments\n\nI realized that I had a dictionary in the mocked data without the name of the instance, meaning that the volume was not attached to any instance. It however had a device name.\n\nI wanted to check that if there was no instance attached, then the display on the Attachment Column would be a \"-\"","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"09861a4f3177fa5a6289aa365b3e6b6a57bf6371","unresolved":true,"context_lines":[{"line_number":221,"context_line":""},{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"ede5f0d3_8ccbd60d","line":224,"in_reply_to":"df938c48_8e017063","updated":"2024-07-03 13:40:26.000000000","message":"First of all, the result of the \"in\" operator is True or False, never None, so this condition will always be false.\n\nSecond, I think you meant `if \"instance\" in attachment:`.\n\nSince you get the instance on the previous line anyways, and since `get` will return None by default if it\u0027s missing, you could also do `if instance is None:`","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":221,"context_line":""},{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9d08d33d_64d6975e","line":224,"in_reply_to":"ede5f0d3_8ccbd60d","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"6f04565d5a4d4ba3e5fe98b8b44c54d940a20096","unresolved":true,"context_lines":[{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"},{"line_number":228,"context_line":"                        link \u003d \"%(dev)s on %(instance)s\""}],"source_content_type":"text/x-python","patch_set":3,"id":"e6e6bf52_fa3ce98f","line":225,"updated":"2024-07-02 09:19:32.000000000","message":"leftover debugging print","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":222,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":223,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":224,"context_line":"                    if instance in attachment \u003d\u003d None:"},{"line_number":225,"context_line":"                        print(instance)"},{"line_number":226,"context_line":"                        self.assertIsNone(instance, \"-\")"},{"line_number":227,"context_line":"                    else:"},{"line_number":228,"context_line":"                        link \u003d \"%(dev)s on %(instance)s\""}],"source_content_type":"text/x-python","patch_set":3,"id":"88705747_1f3dfed9","line":225,"in_reply_to":"e6e6bf52_fa3ce98f","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"cb94cbb08a3bd7475e4dc7bbcd63afc613460f93"},{"author":{"_account_id":8648,"name":"Radomir Dopieralski","email":"openstack@dopieralski.pl","username":"thesheep"},"change_message_id":"c3bb0818e53e410e7f8cd3d0a04bf7f067648c98","unresolved":true,"context_lines":[{"line_number":219,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":220,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":221,"context_line":"                    if instance is None:"},{"line_number":222,"context_line":"                        self.assertIsNone(None, \"-\")"},{"line_number":223,"context_line":"                    else:"},{"line_number":224,"context_line":"                        link \u003d \"%(dev)s on %(instance)s\""},{"line_number":225,"context_line":"                        formatted \u003d link % {\"dev\": dev, \"instance\": instance} "}],"source_content_type":"text/x-python","patch_set":6,"id":"50ca2be3_65034ff1","line":222,"updated":"2024-07-03 15:49:00.000000000","message":"This will always be true, because None is always None.\nDid you want to check instance here?","commit_id":"2a507780c594568bec1aefed52f6fc672ad73413"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                    dev \u003d attachment.get(\"device\")"},{"line_number":220,"context_line":"                    instance \u003d attachment.get(\"instance\")"},{"line_number":221,"context_line":"                    if instance is None:"},{"line_number":222,"context_line":"                        self.assertIsNone(None, \"-\")"},{"line_number":223,"context_line":"                    else:"},{"line_number":224,"context_line":"                        link \u003d \"%(dev)s on %(instance)s\""},{"line_number":225,"context_line":"                        formatted \u003d link % {\"dev\": dev, \"instance\": instance} "}],"source_content_type":"text/x-python","patch_set":6,"id":"09bf2bdc_18a2f77c","line":222,"in_reply_to":"50ca2be3_65034ff1","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"2a507780c594568bec1aefed52f6fc672ad73413"},{"author":{"_account_id":6914,"name":"Tatiana Ovchinnikova","email":"t.v.ovtchinnikova@gmail.com","username":"tmazur"},"change_message_id":"f9bb2f6f1cf318aef1d0fe60262fd9fda9b9a0af","unresolved":true,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":8,"id":"c5a68c9e_e5339f9d","line":57,"updated":"2024-07-05 17:03:17.000000000","message":"We don\u0027t need this line, it checks nothing.","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":36873,"name":"Agnes Nduta","display_name":"Abby","email":"agnesndutamwaniki@gmail.com","username":"AbbyNduta"},"change_message_id":"1ea65211cc47cd587b3d3bbba9a4c7db277875b0","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":8,"id":"c5cf3816_367d9251","line":57,"in_reply_to":"c5a68c9e_e5339f9d","updated":"2024-07-10 14:44:15.000000000","message":"Done","commit_id":"aac5d7b4c8da1eb1952d8ecd743ab3026e48ef01"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"c9c46efb5c55601997364131d2dbc074672197e5","unresolved":true,"context_lines":[{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            for volume in volumes:"},{"line_number":56,"context_line":"                volume.attachments \u003d []"},{"line_number":57,"context_line":"                self.assertEqual(\u0027\u0027.join(volume.attachments), \"\")"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        self.mock_volume_backup_supported.return_value \u003d False"},{"line_number":60,"context_line":"        if with_groups:"}],"source_content_type":"text/x-python","patch_set":13,"id":"1100ad77_56c09a27","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":65},"updated":"2024-07-11 08:27:50.000000000","message":"What is the purpose of this assertion?\nOn line 56 is an assignment of empty list to volume.attachments\nOn line 57 is an assertion of equality of joined volume.attachments (which is every time empty list so the result will be every time empty string) with another empty string.\nThere is not chance they will not be equal, I guess.\nAm I missing something there?","commit_id":"bf6feb535dfa2165bc438879a6370139211b101f"}]}
