def to_json()

in otava/series.py [0:0]


    def to_json(self):
        change_points_json = {}
        for metric, cps in self.change_points.items():
            change_points_json[metric] = [cp.to_json(rounded=False) for cp in cps]

        weak_change_points_json = {}
        for metric, cps in self.weak_change_points.items():
            weak_change_points_json[metric] = [cp.to_json(rounded=False) for cp in cps]

        data_json = {}
        for metric, datapoints in self.__series.data.items():
            data_json[metric] = [float(d) if d is not None else None for d in datapoints]

        return {
            "test_name": self.test_name(),
            "time": self.time(),
            "change_points_timestamp": self.change_points_timestamp,
            "branch_name": self.branch_name(),
            "options": self.options.to_json(),
            "metrics": self.__series.metrics,
            "attributes": self.__series.attributes,
            "data": self.__series.data,
            "change_points": change_points_json,
            "weak_change_points": weak_change_points_json
        }