diff options
author | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2012-01-12 23:21:38 +0100 |
---|---|---|
committer | Raphaël Barrois <raphael.barrois@polytechnique.org> | 2012-01-12 23:21:38 +0100 |
commit | c60c3106c700f5f42ad4fcf82f327da98ec5eb9e (patch) | |
tree | 570302046f68591b05a7178152c610917c71fe45 /factory/containers.py | |
parent | 0c4b9334c93170ce6df17506f48e3937090aec05 (diff) | |
download | factory-boy-c60c3106c700f5f42ad4fcf82f327da98ec5eb9e.tar factory-boy-c60c3106c700f5f42ad4fcf82f327da98ec5eb9e.tar.gz |
Add __repr__ / __str__ to a couple of objects.
Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Diffstat (limited to 'factory/containers.py')
-rw-r--r-- | factory/containers.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/factory/containers.py b/factory/containers.py index 497e98c..dd11f5f 100644 --- a/factory/containers.py +++ b/factory/containers.py @@ -49,13 +49,21 @@ class LazyStub(object): __initialized = False - def __init__(self, attrs, containers=()): + def __init__(self, attrs, containers=(), target_class=object): self.__attrs = attrs self.__values = {} self.__pending = [] self.__containers = containers + self.__target_class = target_class self.__initialized = True + def __repr__(self): + return '<LazyStub for %s>' % self.__target_class.__name__ + + def __str__(self): + return '<LazyStub for %s with %s>' % ( + self.__target_class.__name__, self.__attrs.keys()) + def __fill__(self): """Fill this LazyStub, computing values of all defined attributes. @@ -258,7 +266,9 @@ class AttributeBuilder(object): v = OrderedDeclarationWrapper(v, self.factory.sequence) wrapped_attrs[k] = v - return LazyStub(wrapped_attrs, containers=self._containers).__fill__() + stub = LazyStub(wrapped_attrs, containers=self._containers, + target_class=self.factory) + return stub.__fill__() class StubObject(object): |