In case it can be useful, the one below is the test structure that I use in my app (app name is "bgb").
I do not use/like doctests, hence only a unit and functional test classes are provided.
Do you think it would be acceptable for grokproject to generate something similar?
=== tests/config.py ===
import os
import z3c.testsetup
from zope.app.testing.functional import ZCMLLayer
In case it can be useful, the one below is the test structure that I use in my app (app name is "bgb").
I do not use/like doctests, hence only a unit and functional test classes are provided.
Do you think it would be acceptable for grokproject to generate something similar?
=== tests/config.py ===
import os
import z3c.testsetup testing. functional import ZCMLLayer
from zope.app.
import bgb
ftesting_zcml = os.path. join(os. path.dirname( bgb.__file_ _), 'ftesting.zcml') ftesting_ zcml, __name__, 'FunctionalLayer', allow_teardown= True)
FunctionalLayer = ZCMLLayer(
test_suite = z3c.testsetup. register_ all_tests( 'bgb')
=== tests/test_app.py ===
"""
Needed in order to make this executable.
:Test-Layer: python
"""
import unittest
from zope.publisher. interfaces import NotFound
# --- unittest
class TestUnit( unittest. TestCase) :
# put unit tests for your app here
def test_some_ test(self) :
self.assertEqu al(1 + 1, 2)
# --- functional
from zope.app. testing. functional import FunctionalTestCase r.testing import Browser
from zope.testbrowse
from bgb.tests.config import FunctionalLayer
from bgb.app import Bgb
class TestFunctional( FunctionalTestC ase):
# put functional tests for your app here
layer = FunctionalLayer
def setUp(self): grok.zope. org/doc/ current/ reference/ testing. html#functional -test-layer
FunctionalTest Case.setUp( self)
self.browser = Browser()
self.browser. handleErrors = False der()
# creates an app/site which can be navigated
# http://
root = self.getRootFol
root['bgb'] = Bgb()
def test_home(self):
self.browser. open('http:// localhost/ bgb')
#self. assertEqual( self.browser. title, 'Welcome')
# test other views here localhost/ bgb/search')
#def test_search(self):
# self.browser.open('http://