How to use clean_object_dicts method in autotest

Best Python code snippet using autotest_python

model_logic.py

Source:model_logic.py Github

copy

Full Screen

...534 filter_data.pop('query_limit', None)535 query = cls.query_objects(filter_data, initial_query=initial_query)536 return query.count()537 @classmethod538 def clean_object_dicts(cls, field_dicts):539 """\540 Take a list of dicts corresponding to object (as returned by541 query.values()) and clean the data to be more suitable for542 returning to the user.543 """544 for field_dict in field_dicts:545 cls.clean_foreign_keys(field_dict)546 cls._convert_booleans(field_dict)547 cls.convert_human_readable_values(field_dict,548 to_human_readable=True)549 @classmethod550 def list_objects(cls, filter_data, initial_query=None, fields=None):551 """\552 Like query_objects, but return a list of dictionaries.553 """554 query = cls.query_objects(filter_data, initial_query=initial_query)555 field_dicts = [model_object.get_object_dict(fields)556 for model_object in query]557 return field_dicts558 @classmethod559 def smart_get(cls, id_or_name, valid_only=True):560 """\561 smart_get(integer) -> get object by ID562 smart_get(string) -> get object by name_field563 """564 if valid_only:565 manager = cls.get_valid_manager()566 else:567 manager = cls.objects568 if isinstance(id_or_name, (int, long)):569 return manager.get(pk=id_or_name)570 if isinstance(id_or_name, basestring):571 return manager.get(**{cls.name_field : id_or_name})572 raise ValueError(573 'Invalid positional argument: %s (%s)' % (id_or_name,574 type(id_or_name)))575 @classmethod576 def smart_get_bulk(cls, id_or_name_list):577 invalid_inputs = []578 result_objects = []579 for id_or_name in id_or_name_list:580 try:581 result_objects.append(cls.smart_get(id_or_name))582 except cls.DoesNotExist:583 invalid_inputs.append(id_or_name)584 if invalid_inputs:585 raise cls.DoesNotExist('The following %ss do not exist: %s'586 % (cls.__name__.lower(),587 ', '.join(invalid_inputs)))588 return result_objects589 def get_object_dict(self, fields=None):590 """\591 Return a dictionary mapping fields to this object's values.592 """593 if fields is None:594 fields = self.get_field_dict().iterkeys()595 object_dict = dict((field_name, getattr(self, field_name))596 for field_name in fields)597 self.clean_object_dicts([object_dict])598 self._postprocess_object_dict(object_dict)599 return object_dict600 def _postprocess_object_dict(self, object_dict):601 """For subclasses to override."""602 pass603 @classmethod604 def get_valid_manager(cls):605 return cls.objects606 def _record_attributes(self, attributes):607 """608 See on_attribute_changed.609 """610 assert not isinstance(attributes, basestring)611 self._recorded_attributes = dict((attribute, getattr(self, attribute))...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run autotest automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful