summaryrefslogtreecommitdiff
path: root/factory/containers.py
diff options
context:
space:
mode:
authorRaphaël Barrois <raphael.barrois@polytechnique.org>2012-01-12 23:21:38 +0100
committerRaphaël Barrois <raphael.barrois@polytechnique.org>2012-01-12 23:21:38 +0100
commitc60c3106c700f5f42ad4fcf82f327da98ec5eb9e (patch)
tree570302046f68591b05a7178152c610917c71fe45 /factory/containers.py
parent0c4b9334c93170ce6df17506f48e3937090aec05 (diff)
downloadfactory-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.py14
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):