I'm not sure specifically why it would be triggered (not experienced this
before with other projects using Deform).

In any case, I was able to solve by refining the test suite setting in
setup.py, specifing myproject.tests rather than just myproject.

Thanks,
Ben

On 5 March 2012 20:41, Mike Orr <[email protected]> wrote:

> So Deform is trying to resolve a table schema at import. I don't know
> about Deform schemas, but what's probably happening is that with
> pserve, the engine is configured and bound before the view scan is
> called, but in the test environment it's importing the model looking
> for tests, and thus triggering the code before main() has been called.
> This often happens in unit tests, in Pylons and other frameworks. The
> general solution is to move the code into a function or arrange for
> that module not to be scanned, but I don't know how to apply this to
> Deform.
>
> On Mon, Mar 5, 2012 at 2:31 AM, Benjamin Sims <[email protected]>
> wrote:
> > Thanks for the help,
> >
> > Relevant section of the traceback is as follows:
> >
> >
> > File
> >
> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py",
> > line 91, in loadTestsFromName
> >     module = __import__('.'.join(parts_copy))
> >   File "/Users/benjamin/Project/app/dev/Project/project/schemas.py", line
> > 171, in <module>
> >     class TheSchema(colander.Schema):
> >   File "/Users/benjamin/Project/app/dev/Project/project/schemas.py", line
> > 176, in TheSchema
> >     widget = deform.widget.SelectWidget(values=helper()),
> >   File "/Users/benjamin/Project/app/dev/Project/project/schemas.py", line
> > 168, in helper
> >     # SQLA query is done here
> >
> > It seems that the unittest loader is loading the schema class as one of
> its
> > tests, which then makes the helper call and fails.
> >
> > Commenting out the TheSchema class allows the test to run as normal.
> >
> > Thanks,
> > Ben
> >
> > On 2 March 2012 19:05, Mike Orr <[email protected]> wrote:
> >>
> >> On Fri, Mar 2, 2012 at 3:16 AM, Benjamin Sims <[email protected]>
> >> wrote:
> >> > on the grounds that there is no bind for DBSession in helper() above.
> I
> >> > understand that there is no bind, but helper is not called explicitly
> >> > nor
> >> > required by anything in the tests.
> >>
> >> Does the traceback say who called helper()? What happens if you
> >> comment out the helper function?
> >>
> >> --
> >> Mike Orr <[email protected]>
> >>
> >> --
> >> You received this message because you are subscribed to the Google
> Groups
> >> "pylons-discuss" group.
> >> To post to this group, send email to [email protected].
> >> To unsubscribe from this group, send email to
> >> [email protected].
> >> For more options, visit this group at
> >> http://groups.google.com/group/pylons-discuss?hl=en.
> >>
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "pylons-discuss" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> > http://groups.google.com/group/pylons-discuss?hl=en.
>
>
>
> --
> Mike Orr <[email protected]>
>
> --
> You received this message because you are subscribed to the Google Groups
> "pylons-discuss" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/pylons-discuss?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.

Reply via email to