Best Python code snippet using localstack_python
revisions.py
Source:revisions.py  
...50    def is_active(self):51        """Returns whether there is an active revision for this thread."""52        return self._depth > 053    54    def _assert_active(self):55        """Checks for an active revision, throwning an exception if none."""56        if not self.is_active():57            raise RevisionManagementError, "There is no active revision for this thread."58        59    def _add(self, obj):60        """61        Adds an object to the current revision.62        63        If `fields` is specified, then only the named fields will be serialized.64        65        If `follow` is specified, then the named foreign relationships will also66        be included in the revision.  `follow` can be specified as a list of67        relationship names, or as a dictionary mapping relationship names to68        a list of fields to be serialized.69        """70        self._assert_active()71        self._versions.add(obj)72        73    def set_user(self, user):74        """Sets the user for the current revision"""75        self._assert_active()76        self._user = user77        78    def get_user(self):79        """Gets the user for the current revision."""80        self._assert_active()81        return self._user82    83    user = property(get_user,84                    set_user,85                    doc="The user for the current revision.")86        87    def set_comment(self, comment):88        """Sets the comment for the current revision"""89        self._assert_active()90        self._comment = comment91        92    def get_comment(self):93        """Gets the comment for the current revision."""94        self._assert_active()95        return self._comment96    97    comment = property(get_comment,98                       set_comment,99                       doc="The comment for the current revision.")100        101    def add_meta(self, cls, **kwargs):102        """Adds a class of mete information to the current revision."""103        self._assert_active()104        self._meta.append((cls, kwargs))105        106    def invalidate(self):107        """Marks this revision as broken, so should not be commited."""108        self._assert_active()109        self._is_invalid = True110        111    def end(self):112        """Ends a revision."""113        self._assert_active()114        self._depth -= 1115        # Handle end of revision conditions here.116        if self._depth == 0:117            try:118                if self._versions and not self._is_invalid:119                    # Save a new revision.120                    revision = Revision.objects.create(user=self._user,121                                                       comment=self._comment)122                    revision_set = set()123                    # Follow relationships.124                    for version in self._versions:125                        add_to_revision(version, revision_set)126                    # Save version models.127                    for obj in revision_set:...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.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
