source: products/quintagroup.pfg.captcha/branches/migration/quintagroup/pfg/captcha/tests/base.py @ 2734

Last change on this file since 2734 was 2734, checked in by mylan, 10 years ago

#222: Added test for migration from old qPloneCaptchaField to new quintagroup.pfg.captcha

  • Property svn:eol-style set to native
File size: 1.7 KB
Line 
1import re
2import string
3import unittest
4import transaction
5
6from Products.Five import zcml
7from Products.Five import fiveconfigure
8from Testing import ZopeTestCase as ztc
9
10from Products.PloneTestCase.layer import PloneSite
11from Products.PloneTestCase import setup as ptc_setup
12from Products.PloneTestCase import PloneTestCase as ptc
13
14PACKAGES = [
15    'quintagroup.captcha.core',
16    'quintagroup.pfg.captcha',
17]
18REQUIREMENTS = ['PloneFormGen',] + PACKAGES
19
20ptc.setupPloneSite()
21
22class NotInstalled(PloneSite):
23    """ Only package register, without installation into portal
24    """
25    @classmethod
26    def setUp(cls):
27        fiveconfigure.debug_mode = True
28        import quintagroup.pfg.captcha
29        zcml.load_config('configure.zcml', quintagroup.pfg.captcha)
30        fiveconfigure.debug_mode = False
31        ztc.installProduct('PloneFormGen')
32        ztc.installPackage('quintagroup.pfg.captcha')
33        ztc.installPackage('quintagroup.captcha.core')
34
35    @classmethod
36    def tearDown(cls):
37        ptc_setup.cleanupPloneSite(ptc_setup.portal_name)
38
39
40class Installed(NotInstalled):
41    """ Install product into the portal
42    """
43    @classmethod
44    def setUp(cls):
45        app = ztc.app()
46        portal = app[ptc_setup.portal_name]
47
48        # Sets the local site/manager
49        ptc_setup._placefulSetUp(portal)
50        # Install PROJECT
51        qi = getattr(portal, 'portal_quickinstaller', None)
52        qi.installProduct("quintagroup.pfg.captcha")
53        transaction.commit()
54
55    @classmethod
56    def tearDown(cls):
57        ptc_setup._placefulTearDown()
58       
59
60class TestCase(ptc.PloneTestCase):
61    layer = Installed
62
63
64class TestCaseNotInstalled(ptc.PloneTestCase):
65    layer = NotInstalled
Note: See TracBrowser for help on using the repository browser.