ok, not sure this is the way it should work, but now py.test kallithea/tests/other/test_dummy.py behave like expected.
I used create_test_env to properly setup the test environment and test DB: https://bitbucket.org/_amol_/kallithea-tg/src/21ba202099994a4a55dd7744469b47e1d223b478/kallithea/tests/__init__.py?fileviewer=file-view-default#__init__.py-163 Note that on my pc I had to comment some lines of create_test_env as it was failing due to file permissions, not sure this is only my problem: https://bitbucket.org/_amol_/kallithea-tg/src/21ba202099994a4a55dd7744469b47e1d223b478/kallithea/lib/utils.py?fileviewer=file-view-default#utils.py-717:732 On Mon, Mar 14, 2016 at 1:41 PM, Thomas De Schampheleire < [email protected]> wrote: > Hi Alessandro, > > On Sun, Mar 13, 2016 at 10:10 PM, Alessandro Molina > <[email protected]> wrote: > > > > > > On Wed, Mar 9, 2016 at 8:09 PM, Thomas De Schampheleire > > <[email protected]> wrote: > >> > >> Then I get an error that seems to indicate that the model is not > >> correctly initialized. > > > > > > I suppose you are mentioning the "no such table: permissions" error. > > I faced that too. > > > > As I don't know much about the kallithea testsuite architecture and > py.test > > doesn't help as fixtures can come from anywhere, who should be in charge > of > > running the websetup and create the database? It seems to me that the > issue > > is just the no database is created. I saw a line mentioning setup-app in > > test/__init__.py but it's commented. > > I must say that I'm also not very familiar with the setup part of the > test suite. > What I can say: > > - originally all setup was done in kallithea/tests/__init__.py > - with the introduction of pytest, a new file > kallithea/tests/conftest.py was added that does some setup. This code > is run by pytest directly. This code has worked fine so far, allowing > to run the test suite with 'py.test' rather than 'nosetests'. > > - recently, I have added TestControllerPytest in > kallithea/tests/__init__.py to allow using real pytest features like > fixtures. We are now in a transitional period where some tests are > using the original TestController (unittest-based) and some tests are > using the new TestControllerPytest. > Due to the fact that pytest does not allow test classes to have a > __init__ method, I had to reorganize and partially duplicate some > setup code in kallithea/tests/__init__.py. > > We really care mostly about pytest style classes now. In parallel to > the turbogears migration, I am converting the tests to > TestControllerPytest, so soon this will be the only class remaining. I > hope this can be completed too in the near future, so that by the time > we can merge the Turbogears branch all tests are of a single (pytest) > type. > > /Thomas >
_______________________________________________ kallithea-general mailing list [email protected] http://lists.sfconservancy.org/mailman/listinfo/kallithea-general
