def validate_properties(self, properties, category=None, status=None):
        errors = []

        if self.instance:
            status = status or self.instance.status
            if self.instance.properties:
                update = self.instance.properties.copy()
                update.update(properties)
                properties = update
        else:
            status = status or category.default_status

        properties = self.replace_null(properties)
        try:
            if status == 'draft':
                Observation.validate_partial(category, properties)
            else:
                Observation.validate_full(category, properties)
        except ValidationError, e:
            errors.append(e)

        self._validated_data['properties'] = properties
        self._validated_data['meta']['status'] = status

        if errors:
            self._errors['properties'] = errors
A decorator to skip a test if condition is met
dataset/ETHPy150Open ExCiteS/geokey/geokey/contributions/serializers.py/ContributionSerializer.validate_properties--crossover with--dataset/ETHPy150Open scikit-beam/scikit-beam/skbeam/testing/decorators.py/skip_if