Esempio n. 1
0
    def benchmarks_compare(self, request, pk=None):
        result = self.get_object()
        previous = result.to_compare()
        if not previous:
            return response.Response([])

        def __get_key(item):
            return item['change']

        data = []
        for item in progress.get_progress_between_results(result, previous):
            data_list = []
            for data_item in comparison.compare(item.before, item.after):
                data_list.append({
                    'change': data_item['change'],
                    'current': serializers.ResultDataSerializer(
                        data_item['current']).data,
                    'previous': serializers.ResultDataSerializer(
                        data_item['previous']).data,
                })
            res = {
                "environment": item.environment.identifier,
                "data": sorted(data_list, reverse=True, key=__get_key)
            }
            data.append(res)

        return response.Response(data)
Esempio n. 2
0
    def benchmarks_compare(self, request, pk=None):
        result = self.get_object()
        comparison_base = request.query_params.get('comparison_base')
        if comparison_base:
            previous = benchmarks_models.Result.objects.get(pk=comparison_base)
        else:
            previous = result.to_compare()
        if not previous:
            return response.Response([])

        def __get_key(item):
            return item['change']

        data = []
        for item in progress.get_progress_between_results(result, previous):
            data_list = []
            for data_item in comparison.compare(item.before, item.after):
                data_list.append({
                    'change':
                    data_item['change'],
                    'current':
                    serializers.ResultDataSerializer(
                        data_item['current']).data,
                    'previous':
                    serializers.ResultDataSerializer(
                        data_item['previous']).data,
                })
            res = {
                "environment": item.environment.identifier,
                "data": sorted(data_list, reverse=True, key=__get_key)
            }
            data.append(res)

        return response.Response(data)
Esempio n. 3
0
def result_progress(current, baseline):
    results = progress.get_progress_between_results(current, baseline)
    _send_results(
        current=current,
        template='result_progress.html',
        comparisons={p: render_comparison(p.before, p.after) for p in results},
        baseline=current.baseline,
        header="Art - Benchmark Progress for %s" % current.name,
        subject_template="%s [%s]",
    )
Esempio n. 4
0
def result_progress(current, baseline):
    results = progress.get_progress_between_results(current, baseline)
    _send_results(
        current=current,
        template='result_progress.html',
        comparisons=render_results(results),
        baseline=current.baseline,
        header="Art - Benchmark Progress for %s" % current.name,
        subject_template="%s [%s]",
    )