def _create_sketch(self, name, user, acl=False): """Create a sketch in the database. Args: name: Name of the sketch (string) user: A user (instance of timesketch.models.user.User) acl: Boolean value to decide if ACL permissions should be set Returns: A sketch (instance of timesketch.models.sketch.Sketch) """ sketch = Sketch.get_or_create(name=name, description=name, user=user) if acl: for permission in ['read', 'write', 'delete']: sketch.grant_permission(permission=permission, user=user) label = sketch.Label(label='Test label', user=user) status = sketch.Status(status='Test status', user=user) sketch.labels.append(label) sketch.status.append(status) self._commit_to_database(sketch) return sketch