def get_or_create(user, owner, **kwargs) : resources = Resource.objects.filter(in_agent=owner.get_ref(),name=kwargs['name']) if resources.count() < 1 : resource = owner.create_Resource(user, in_agent=owner.get_ref(), title=kwargs['title'], description=kwargs['description'], author=kwargs['author'], license=kwargs['license'], created_by=user, name=kwargs['name']) resource.save() if kwargs.has_key('resource') : resource.get_inner().resource = kwargs['resource'] resource.save() else : resource = resources[0] try : resource = resource.get_inner() except : pass resource.in_agent = owner.get_ref() resource.created_by = user dummy = extract(kwargs,'in_agent') dummy = extract(kwargs,'created_by') for k,v in kwargs.iteritems() : setattr(resource, k, v) resource.save() return resource
def test_extract(self) : d = {'a':1, 'b':2} a = extract(d,'a') self.assertEquals(a,1) self.assertEquals(d,{'b':2})