Skip to content

Commit

Permalink
Don't show BBB warnings during unittests.
Browse files Browse the repository at this point in the history
Add BBB markers so that we'll remember to remove these tests when we finally remove
support for the <vocabulary /> directive.
  • Loading branch information
philikon committed Mar 15, 2006
1 parent dec35b3 commit 128f62e
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 0 deletions.
13 changes: 13 additions & 0 deletions tests/keywords_vocab.zcml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<configure xmlns="http://namespaces.zope.org/zope">

<!-- BBB 2006/02/24, to be removed after 12 months -->

<include package="zope.app.schema" file="meta.zcml"/>

<vocabulary
name="my-vocab"
factory="zope.app.schema.tests.test_directives.MyFactory"
filter="my-filter"
another="keyword"/>

</configure>
11 changes: 11 additions & 0 deletions tests/simple_vocab.zcml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<configure xmlns="http://namespaces.zope.org/zope">

<!-- BBB 2006/02/24, to be removed after 12 months -->

<include package="zope.app.schema" file="meta.zcml"/>

<vocabulary
name="my-vocab"
factory="zope.app.schema.tests.test_directives.MyFactory" />

</configure>
75 changes: 75 additions & 0 deletions tests/test_directives.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
##############################################################################
#
# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""Testing vocabulary directive.
$Id$
"""
# BBB 2006/02/24, to be removed after 12 months

import unittest
import warnings

from zope.app.testing.placelesssetup import PlacelessSetup
from zope.configuration import xmlconfig
from zope.app.schema.vocabulary import ZopeVocabularyRegistry

import zope.app.schema


class MyFactory(object):
def __init__(self, context, **kw):
self.ob = context
self.kw = kw


class DirectivesTest(PlacelessSetup, unittest.TestCase):

extra_keywords = {"filter": "my-filter",
"another": "keyword"}

def setUp(self):
super(DirectivesTest, self).setUp()
def ignorewarning(message, category, filename, lineno, file=None):
pass
warnings.showwarning = ignorewarning

def tearDown(self):
super(DirectivesTest, self).tearDown()
warnings.resetwarnings()

def check_vocabulary_get(self, kw={}):
context = object()
registry = ZopeVocabularyRegistry()
vocab = registry.get(context, "my-vocab")
self.assert_(vocab.ob is context)
self.assertEqual(vocab.kw, kw)

def test_simple_zcml(self):
self.context = xmlconfig.file("tests/simple_vocab.zcml",
zope.app.schema)
self.check_vocabulary_get()

def test_passing_keywords_from_zcml(self):
self.context = xmlconfig.file("tests/keywords_vocab.zcml",
zope.app.schema)
self.check_vocabulary_get(self.extra_keywords)


def test_suite():
return unittest.TestSuite((
unittest.makeSuite(DirectivesTest),
))

if __name__ == '__main__':
unittest.main()

0 comments on commit 128f62e

Please sign in to comment.