)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"b79198c10dea7149df5ebcd8ad1087ea5f76cb76","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Akihito Takai \u003ctakaiak@nttdata.co.jp\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-08-24 11:39:19 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add functional test with python support middleware"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add functional test with python support middleware."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1ac06dbe_48985a6a","line":7,"range":{"start_line":7,"start_character":24,"end_line":7,"end_character":50},"updated":"2016-08-24 03:14:35.000000000","message":"IMO, this is not the right explanation. It sounds like we have another middleware which supports python.\n\nHow about \u0027Add functional tests for python storlet registration\u0027?","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"1fcb8763e70642c8ce28f1fcf7162d014fd59980","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add functional test with python support middleware"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add functional test with python support middleware."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"TODO: Delete \u0027pass_test\u0027 in \u0027test_simple_storlets.py\u0027 after"},{"line_number":12,"context_line":"python support complete."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1ac06dbe_e8a666bf","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":51},"updated":"2016-08-24 03:12:46.000000000","message":"You need to describe a detail here, not repeating the same thing as commit title.","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"}],"StorletSamples/python/simple/simple.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"19d7a9c1427d05a6abddd24c8e7b797ec3e342b4","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# See the License for the specific language governing permissions and"},{"line_number":14,"context_line":"# limitations under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"pass"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_48f21a07","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":4},"updated":"2016-08-24 03:11:23.000000000","message":"Please create a class in this file.","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"}],"StorletSamples/python/simple/source.txt":[{"author":{"_account_id":11317,"name":"Eran Rom","email":"eran@itsonlyme.name","username":"eranr"},"change_message_id":"592c32c6f23974c1e96b5a2836cd43196249097d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"abcdefghijklmonp"}],"source_content_type":"text/plain","patch_set":11,"id":"9a89bdaa_91651ae3","line":1,"updated":"2016-09-03 15:13:11.000000000","message":"This fie is redundant, unless you plan to add functionality to the test class that actually makes use of it...","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"1e72a10aa4d7daf64d5f0389f79008e883e793c5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"abcdefghijklmonp"}],"source_content_type":"text/plain","patch_set":11,"id":"9a89bdaa_e5030075","line":1,"in_reply_to":"9a89bdaa_91651ae3","updated":"2016-09-04 04:13:20.000000000","message":"As far as I understand about current func test codes, this file is needed to create a object to test GET execution. Please see the change in base func test class.","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"}],"tests/functional/__init__.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"19d7a9c1427d05a6abddd24c8e7b797ec3e342b4","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        super(StorletFunctionalTest, self).setUp()"},{"line_number":48,"context_line":"        self.url, self.token \u003d get_auth(self.conf)"},{"line_number":49,"context_line":"        self.acct \u003d self.url.split(\u0027/\u0027)[4]"},{"line_number":50,"context_line":"        if hasattr(self, \u0027language\u0027):"},{"line_number":51,"context_line":"            self.path_to_bundle \u003d \u0027%s/%s\u0027 % (PATH_TO_STORLETS,"},{"line_number":52,"context_line":"                                             self.storlet_dir)"},{"line_number":53,"context_line":"        else: "},{"line_number":54,"context_line":"            self.path_to_bundle \u003d \u0027%s/%s/%s\u0027 % (PATH_TO_STORLETS,"},{"line_number":55,"context_line":"                                                self.storlet_dir,"},{"line_number":56,"context_line":"                                                BIN_DIR)"},{"line_number":57,"context_line":"        self.deps \u003d []"},{"line_number":58,"context_line":"        for d in self.dep_names:"},{"line_number":59,"context_line":"            self.deps.append(\u0027%s/%s\u0027 % (self.path_to_bundle, d))"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_c86baa83","line":56,"range":{"start_line":50,"start_character":0,"end_line":56,"end_character":56},"updated":"2016-08-24 03:11:23.000000000","message":"I don\u0027t like this if-hasattr block so much, because this makes it difficult to find default behavior.\nPlease consider the following two possible improvement.\n\n1. set language parameter for all classes\n2. pass language as a parameter of setUp, and pass that parameter from setUp function in child classes?","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"},{"author":{"_account_id":11317,"name":"Eran Rom","email":"eran@itsonlyme.name","username":"eranr"},"change_message_id":"592c32c6f23974c1e96b5a2836cd43196249097d","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        status \u003d response.get(\u0027status\u0027)"},{"line_number":44,"context_line":"        assert (status \u003e\u003d 200 or status \u003c 300)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def setUp(self, language\u003d\u0027Java\u0027):"},{"line_number":47,"context_line":"        super(StorletFunctionalTest, self).setUp()"},{"line_number":48,"context_line":"        self.url, self.token \u003d get_auth(self.conf)"},{"line_number":49,"context_line":"        self.acct \u003d self.url.split(\u0027/\u0027)[4]"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_b1621ed7","line":46,"updated":"2016-09-03 15:13:11.000000000","message":"if we choose to adapt the intermediate layer of:\nStorletPythonFunctionalTest and\nStorletJavaFunctionalTest\nI guess that this is where the path_to_bundle should be dealt with.\nSee the comment on the test file","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"}],"tests/functional/python/test_simple_storlet.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"19d7a9c1427d05a6abddd24c8e7b797ec3e342b4","unresolved":false,"context_lines":[{"line_number":21,"context_line":"    def setUp(self):"},{"line_number":22,"context_line":"        self.storlet_dir \u003d \u0027python/simple\u0027"},{"line_number":23,"context_line":"        self.storlet_name \u003d \u0027simple.py\u0027"},{"line_number":24,"context_line":"        self.storlet_main \u003d \u0027simple.py\u0027"},{"line_number":25,"context_line":"        self.storlet_log \u003d \u0027simple.log\u0027"},{"line_number":26,"context_line":"        self.headers \u003d {\u0027X-Object-Meta-Testkey\u0027: \u0027tester\u0027}"},{"line_number":27,"context_line":"        self.storlet_file \u003d \u0027source.txt\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_88237255","line":24,"range":{"start_line":24,"start_character":0,"end_line":24,"end_character":39},"updated":"2016-08-24 03:11:23.000000000","message":"This should be indicate \u0027class name\u0027","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"19d7a9c1427d05a6abddd24c8e7b797ec3e342b4","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        pass"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    # Because python support is still insufficient."},{"line_number":38,"context_line":"    @pass_test"},{"line_number":39,"context_line":"    def test_simple(self):"},{"line_number":40,"context_line":"        headers \u003d {\u0027X-Run-Storlet\u0027: self.storlet_name}"},{"line_number":41,"context_line":"        headers.update(self.additional_headers)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_c8f0cacb","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":14},"updated":"2016-08-24 03:11:23.000000000","message":"use unittest.SkipTest instead of your original decorater","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"19d7a9c1427d05a6abddd24c8e7b797ec3e342b4","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"class TestSimpleStorletOnProxy(TestSimpleStorlet):"},{"line_number":52,"context_line":"    def setUp(self):"},{"line_number":53,"context_line":"        super(TestSimpleStorletOnProxy, self).setUp()"},{"line_number":54,"context_line":"        self.additional_headers \u003d {\u0027X-Storlet-Run-On-Proxy\u0027: \u0027\u0027}"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ac06dbe_68f716d3","line":53,"updated":"2016-08-24 03:11:23.000000000","message":"We can pass language parameters here.","commit_id":"509bfcace65b77885a7e46be81737988d992f5f9"},{"author":{"_account_id":11317,"name":"Eran Rom","email":"eran@itsonlyme.name","username":"eranr"},"change_message_id":"592c32c6f23974c1e96b5a2836cd43196249097d","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class TestSimpleStorlet(StorletFunctionalTest):"},{"line_number":20,"context_line":"    def setUp(self):"},{"line_number":21,"context_line":"        self.storlet_dir \u003d \u0027python/simple\u0027"},{"line_number":22,"context_line":"        self.storlet_name \u003d \u0027simple.py\u0027"},{"line_number":23,"context_line":"        self.storlet_main \u003d \u0027simple.SimpleStorlet\u0027"},{"line_number":24,"context_line":"        self.storlet_log \u003d \u0027simple.log\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_f173c6b2","line":21,"updated":"2016-09-03 15:13:11.000000000","message":"Two comments:\n1. I wonder if we want to create an intermediate StorletPythonFunciotnalTest\nthat would take care of the \u0027python\u0027 prefix of the storlet dir, and perhaps more importantly of the language field in line 30\n2. We may also want to push all Java tests under java so that we have\nStorletsSamples\n  java\n  python","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"1e72a10aa4d7daf64d5f0389f79008e883e793c5","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class TestSimpleStorlet(StorletFunctionalTest):"},{"line_number":20,"context_line":"    def setUp(self):"},{"line_number":21,"context_line":"        self.storlet_dir \u003d \u0027python/simple\u0027"},{"line_number":22,"context_line":"        self.storlet_name \u003d \u0027simple.py\u0027"},{"line_number":23,"context_line":"        self.storlet_main \u003d \u0027simple.SimpleStorlet\u0027"},{"line_number":24,"context_line":"        self.storlet_log \u003d \u0027simple.log\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_25fec86b","line":21,"in_reply_to":"9a89bdaa_f173c6b2","updated":"2016-09-04 04:13:20.000000000","message":"I agree that this is an ideal goal, but we still need some more work for refactoring (or other possible improvements about current func tests code).\nThat\u0027s why we start with the \u0027injecting\u0027 to current test codes for java, and I\u0027ll do that refactoring as another work, another patch after landing whole of python support.","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"},{"author":{"_account_id":11317,"name":"Eran Rom","email":"eran@itsonlyme.name","username":"eranr"},"change_message_id":"592c32c6f23974c1e96b5a2836cd43196249097d","unresolved":false,"context_lines":[{"line_number":23,"context_line":"        self.storlet_main \u003d \u0027simple.SimpleStorlet\u0027"},{"line_number":24,"context_line":"        self.storlet_log \u003d \u0027simple.log\u0027"},{"line_number":25,"context_line":"        self.headers \u003d {\u0027X-Object-Meta-Testkey\u0027: \u0027tester\u0027}"},{"line_number":26,"context_line":"        self.storlet_file \u003d \u0027source.txt\u0027"},{"line_number":27,"context_line":"        self.container \u003d \u0027myobjects\u0027"},{"line_number":28,"context_line":"        self.dep_names \u003d []"},{"line_number":29,"context_line":"        self.additional_headers \u003d {}"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_316e0eca","line":26,"updated":"2016-09-03 15:13:11.000000000","message":"Note that this field can be empty, and so it is not obligatory to add the source file.","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"1e72a10aa4d7daf64d5f0389f79008e883e793c5","unresolved":false,"context_lines":[{"line_number":23,"context_line":"        self.storlet_main \u003d \u0027simple.SimpleStorlet\u0027"},{"line_number":24,"context_line":"        self.storlet_log \u003d \u0027simple.log\u0027"},{"line_number":25,"context_line":"        self.headers \u003d {\u0027X-Object-Meta-Testkey\u0027: \u0027tester\u0027}"},{"line_number":26,"context_line":"        self.storlet_file \u003d \u0027source.txt\u0027"},{"line_number":27,"context_line":"        self.container \u003d \u0027myobjects\u0027"},{"line_number":28,"context_line":"        self.dep_names \u003d []"},{"line_number":29,"context_line":"        self.additional_headers \u003d {}"}],"source_content_type":"text/x-python","patch_set":11,"id":"9a89bdaa_0509c495","line":26,"in_reply_to":"9a89bdaa_316e0eca","updated":"2016-09-04 04:13:20.000000000","message":"IMO this addition is needed for some cases, for example, to test only python execution.","commit_id":"ca8691095d706dcdfc51abdd321f8714c4411b28"}]}
