def _get_query(self): # raise FileNotFoundException # ファイル検索 filename = self.path + self.query_file try: if self.name == "qt": return read_json(filename) else:#openstack return read_json(filename)[0] except FileNotFoundError: raise QueryFileNotFoundError except KeyError as e: print("Check this method. You need to check if the file start by list or dict") raise e except JSONDecodeError: with open(filename, 'r') as f: data = f.read() if data.startswith("Not found"): raise NoContentsException elif data.startswith("Internal server error"): raise InternalServerError else: print("Anonymous Error") raise except Exception as e: print("Anonymous Error") print(e.__class__) raise
def _get_detail(self): # ファイル検索 path = self._dir_calc(self.name, self.review_id) try: js = read_json(path + self.detail_file) return js except FileNotFoundError: raise DetailFileNotFoundError
def _get_diffs(self, patch_no, filename): # ファイル検索 dirname = self._dir_calc(self.name, self.review_id) file = self.diff_lines.replace("[NO]", str(patch_no)).replace("[FILE_NAME]", url_encode(filename)) try: js = read_json(dirname + file) return js except FileNotFoundError: raise DiffLineFileNotFoundError
def _get_diff_files(self, patch_no): # ファイル検索 dirname = self._dir_calc(self.name, self.review_id) file = self.diff_files.replace("[NO]", str(patch_no)) try: js = read_json(dirname + file) return js except FileNotFoundError: raise DiffFileNotFoundError except json.decoder.JSONDecodeError as e: raise e
def detect_satd_in_file(self, file_name, ext="py"): diffs = read_json(file_name) comments = self.detect(diffs, ext) return comments