Skip to content
Snippets Groups Projects

Refactor update creation api

Merged Samuel GAIST requested to merge refactor_update_creation_api into master
All threads resolved!
1 file
+ 4
13
Compare changes
  • Side-by-side
  • Inline
@@ -62,7 +62,7 @@ from ..common.api import (
from ..common.mixins import CommonContextMixin
from ..common.exceptions import ShareError
from ..common.serializers import SharingSerializer
from ..common.utils import validate_restructuredtext, ensure_html
from ..common.utils import validate_restructuredtext, ensure_html, py3_cmp
from ..toolchains.models import Toolchain
@@ -111,15 +111,6 @@ class ListCreateExperimentsView(ListCreateContributionView):
def _getStatusLabel(status):
return [s for s in Experiment.STATUS if s[0] == status][0][1]
def _cmp(a, b):
"""
cmp is not available anymore in Python 3. This method is implemetend
as recommended in the documentation for this kind of use case.
Based on:
https://docs.python.org/3.0/whatsnew/3.0.html#ordering-comparisons
"""
return (a > b) - (a < b)
def _custom_compare(exp1, exp2):
PENDING = _getStatusLabel(Experiment.PENDING)
@@ -129,7 +120,7 @@ class ListCreateExperimentsView(ListCreateContributionView):
if exp2["status"] != PENDING:
return -1
elif exp1["creation_date"] != exp2["creation_date"]:
return _cmp(exp1["creation_date"], exp2["creation_date"])
return py3_cmp(exp1["creation_date"], exp2["creation_date"])
else:
return 1
elif exp2["status"] == PENDING:
@@ -142,7 +133,7 @@ class ListCreateExperimentsView(ListCreateContributionView):
]
if (exp1["status"] in tier3_states) and (exp2["status"] in tier3_states):
return _cmp(exp2["end_date"], exp1["end_date"])
return py3_cmp(exp2["end_date"], exp1["end_date"])
elif (exp1["status"] in tier3_states) and (
exp2["status"] not in tier3_states
):
@@ -152,7 +143,7 @@ class ListCreateExperimentsView(ListCreateContributionView):
):
return 1
return _cmp(exp1["start_date"], exp2["start_date"])
return py3_cmp(exp1["start_date"], exp2["start_date"])
# Retrieve the experiments
fields_to_return_original = self.get_serializer_fields(request)
Loading