tell me about the test suite.  which tests are you running ?  whats  
the command line youre trying  ?

test suites should run pretty well, the latest in SVN has some extra  
code to set up sys.path properly, as I have learned that recent  
versions of setuptools dont let you set PYTHONPATH to override an  
already installed version of SA.

so.....assuming you have sqlite3 + pysqlite instlaled, set:

        cd /path/to/sqlalchemy
        export PYTHONPATH=./test/
        python test/engine/alltests.py --verbose

or do:

        python test/<somedir>/<sometest>.py --help

u can get database options and stuff.

On Jun 30, 2006, at 3:34 PM, Charles Duffy wrote:

> The attached patch modifies activemapper.Objectstore to do the  
> containment bit (which *does* resolve the initial issue I was  
> having); adds more extensive proxying, makes assignmapper go  
> through get_session() (is that valid for other context objects?),  
> and otherwise puts things in a state where they seem to Work For Me.
>
> That said, I don't trust this code much: The test suite seems to be  
> extremely nonfunctional ATM, in that a great many of the tests fail  
> with OperationalErrors in that tables they refer to aren't being  
> created, so I can't trivially find out what I broke. (The same  
> thing happens after a "svn revert", so the massive failure in the  
> test suite appears not to be my fault).
> Index: lib/sqlalchemy/schema.py
> ===================================================================
> --- lib/sqlalchemy/schema.py  (revision 1679)
> +++ lib/sqlalchemy/schema.py  (working copy)
> @@ -710,12 +710,12 @@
>                  self.__engines[engine_or_url] = engine_or_url
>              self.context._engine = engine_or_url
>      def is_bound(self):
> -        return self.context._engine is not None
> +        return hasattr(self.context, '_engine') and  
> self.context._engine is not None
>      def dispose(self):
>          """disposes all Engines to which this DynamicMetaData has  
> been connected."""
>          for e in self.__engines.values():
>              e.dispose()
> -    engine=property(lambda s:s.context._engine)
> +    engine=property(lambda s:hasattr(s.context, '_engine') and  
> s.context._engine or None)
>
>  class SchemaVisitor(sql.ClauseVisitor):
>      """defines the visiting for SchemaItem objects"""
> Index: lib/sqlalchemy/ext/assignmapper.py
> ===================================================================
> --- lib/sqlalchemy/ext/assignmapper.py        (revision 1679)
> +++ lib/sqlalchemy/ext/assignmapper.py        (working copy)
> @@ -3,13 +3,13 @@
>
>  def monkeypatch_query_method(ctx, class_, name):
>      def do(self, *args, **kwargs):
> -        query = class_.mapper.query(session=ctx.current)
> +        query = class_.mapper.query(session=ctx.get_session())
>          return getattr(query, name)(*args, **kwargs)
>      setattr(class_, name, classmethod(do))
>
>  def monkeypatch_objectstore_method(ctx, class_, name):
>      def do(self, *args, **kwargs):
> -        session = ctx.current
> +        session = ctx.get_session()
>          if name == "flush":
>              # flush expects a list of objects
>              self = [self]
> Index: lib/sqlalchemy/ext/activemapper.py
> ===================================================================
> --- lib/sqlalchemy/ext/activemapper.py        (revision 1679)
> +++ lib/sqlalchemy/ext/activemapper.py        (working copy)
> @@ -19,12 +19,23 @@
>  #
>  # thread local SessionContext
>  #
> -class Objectstore(SessionContext):
> -    def __getattr__(self, key):
> -        return getattr(self.current, key)
> +class Objectstore(object):
> +
> +    def __init__(self, *args, **kwargs):
> +        self._context = SessionContext(*args, **kwargs)
> +
> +    def __getattr__(self, name):
> +        return getattr(self._context.current, name)
> +
>      def get_session(self):
> -        return self.current
> +        return self._context.current
>
> +    def _get_mapper_extension(self):
> +        return self._context.mapper_extension
> +    mapper_extension = property(_get_mapper_extension,
> +        doc="""get a mapper extension that implements get_session  
> using this context""")
> +
> +
>  objectstore = Objectstore(create_session)
>
>
> Using Tomcat but need to do more? Need to support web services,  
> security?
> Get stuff done quickly with pre-integrated technology to make your  
> job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache  
> Geronimo
> http://sel.as-us.falkag.net/sel? 
> cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Sqlalchemy-users mailing list
> Sqlalchemy-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users


Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Sqlalchemy-users mailing list
Sqlalchemy-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users

Reply via email to