Commit 3839e80a authored by Hanno Schlichting's avatar Hanno Schlichting

Added a corresponding set_registered_packages method and adjust ZopeTestCase

parent 52f50f3c
...@@ -77,6 +77,11 @@ def get_registered_packages(): ...@@ -77,6 +77,11 @@ def get_registered_packages():
return _registered_packages return _registered_packages
def set_registered_packages(packages):
global _registered_packages
_registered_packages = packages
def _registerPackage(module_, init_func=None): def _registerPackage(module_, init_func=None):
"""Registers the given python package as a Zope 2 style product """Registers the given python package as a Zope 2 style product
""" """
......
...@@ -191,7 +191,8 @@ def _installProduct(name, quiet=0): ...@@ -191,7 +191,8 @@ def _installProduct(name, quiet=0):
def hasPackage(name): def hasPackage(name):
'''Checks if a package has been registered with five:registerPackage.''' '''Checks if a package has been registered with five:registerPackage.'''
return name in [m.__name__ for m in getattr(Products, '_registered_packages', [])] from OFS.metaconfigure import get_registered_packages
return name in [m.__name__ for m in get_registered_packages()]
def installPackage(name, quiet=0): def installPackage(name, quiet=0):
'''Installs a registered Python package.''' '''Installs a registered Python package.'''
......
...@@ -18,6 +18,8 @@ $Id$ ...@@ -18,6 +18,8 @@ $Id$
import sys import sys
from unittest import TestSuite from unittest import TestSuite
from OFS.metaconfigure import get_registered_packages
from OFS.metaconfigure import set_registered_packages
from Testing import ZopeTestCase from Testing import ZopeTestCase
from Testing.ZopeTestCase import ZopeLite from Testing.ZopeTestCase import ZopeLite
...@@ -96,10 +98,9 @@ class TestClass(ZopeTestCase.FunctionalTestCase): ...@@ -96,10 +98,9 @@ class TestClass(ZopeTestCase.FunctionalTestCase):
cleanup.cleanUp() cleanup.cleanUp()
sys.path[:] = self.saved sys.path[:] = self.saved
registered = getattr(Products, '_registered_packages', None) registered = get_registered_packages()
if registered is not None: packages = [m for m in registered if m.__name__ != 'testpackage']
Products._registered_packages = [m for m in registered set_registered_packages(packages)
if m.__name__ != 'testpackage']
to_initialize = getattr(Products, '_packages_to_initialize', None) to_initialize = getattr(Products, '_packages_to_initialize', None)
if to_initialize is not None: if to_initialize is not None:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment