Why not just add the google app engine lib subdirectories to your python path?
On Tue, Aug 3, 2010 at 3:09 AM, Jean-Michel Pichavant < jeanmic...@sequans.com> wrote: > samwyse wrote: > >> I'm writing for the Google app engine and have stubbed my toe yet >> again on a simple obstacle. Non-trivial app engines programs require >> the import of several modules that aren't normally in my PYTHONPATH. >> I'd like to be able to test my code outside of the app engine >> framework. I've tried several solutions in the past that worked but >> weren't particularly elegant or portable. Now I've had a new idea. >> Here's my latest attempt: >> >> import os, re >> if __name__ == '__main__': >> pass >> else >> from google.appengine.ext import webapp >> register = webapp.template.create_template_register() >> >> This works great, except my code makes use of the resister object in >> several places, like this: >> >> register.filter(emptylines) >> >> Fortunately, I don't need the functionality of the object, I just want >> something that won't generate an error when I use it. So, what is the >> quickest way to to create such an object (replacing the 'pass' in my >> first snippet). My solution is this: >> >> class C: >> def filter(self, *args, **kwds): >> pass >> register = C() >> >> but it seems like I should be able to do something "better", as >> measured by lines of code, faking more than just a 'filter' method, or >> both. Any ideas? Thanks! >> >> > > here is a class that accepts any method call without generating an error: > > class Stub(object): > @staticmethod > def stub(*arg, **kwarg): > pass > def __getattribute__(self, name): > return Stub.stub > > > s = Stub() > s.foo('bar') > s.bar > s.bar('', '', 5) > > > JM > > -- > http://mail.python.org/mailman/listinfo/python-list >
-- http://mail.python.org/mailman/listinfo/python-list