def api_url(self, **parameters) -> URL: url = parameters.get("url") component = parameters.get("component") # If there's more than 500 issues only the first 500 are returned. This is no problem since we limit # the number of "units" sent to the server anyway (that limit is 100 currently). api = f"{url}/api/issues/search?componentKeys={component}&resolved=false&ps=500" severities = ",".join([severity.upper() for severity in parameters.get("severities", [])]) if severities: api += f"&severities={severities}" types = ",".join([violation_type.upper() for violation_type in parameters.get("types", [])]) if types: api += f"&types={types}" return URL(api)
def api_url(self, **parameters) -> URL: return URL( f"{parameters.get('url')}/lastSuccessfulBuild/testReport/api/json")
def landing_url(self, **parameters) -> URL: return URL(parameters["url"][:-(len("xml"))] + "html")
def api_url(self, **parameters) -> URL: return URL(parameters["url"])
def api_url(self, **parameters) -> URL: return URL( f"{parameters.get('url')}/api/v4/projects/{parameters.get('project')}/" f"jobs?private_token={parameters.get('private_token')}")
def api_url(self, **parameters) -> URL: return URL( f"{parameters.get('url')}/api/json?tree=jobs[buildable,color,url,name]" )
def api_url(self, **parameters) -> URL: component = parameters.get("component") return URL(f"{parameters.get('url')}/api/measures/component?component={component}&metricKeys={self.metricKeys}")
def landing_url(self, **parameters) -> URL: return URL(f"{parameters.get('url')}/component_measures" f"?id={parameters.get('component')}&metric={self.metricKeys}")
def unit_landing_url(unit, **parameters): """Generate a landing url for the unit.""" return URL(f"{parameters.get('url')}/project/issues?id={parameters.get('component')}&open={unit['key']}")
def landing_url(self, **parameters) -> URL: return URL(f"{parameters.get('url')}/project/issues?id={parameters.get('component')}&resolved=false")