summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/__init__.py1
-rw-r--r--tests/test_deprecation.py49
2 files changed, 50 insertions, 0 deletions
diff --git a/tests/__init__.py b/tests/__init__.py
index 5b6fc55..855beea 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -4,6 +4,7 @@
from .test_base import *
from .test_containers import *
from .test_declarations import *
+from .test_deprecation import *
from .test_django import *
from .test_fuzzy import *
from .test_helpers import *
diff --git a/tests/test_deprecation.py b/tests/test_deprecation.py
new file mode 100644
index 0000000..bccc351
--- /dev/null
+++ b/tests/test_deprecation.py
@@ -0,0 +1,49 @@
+# -*- coding: utf-8 -*-
+# Copyright (c) 2010 Mark Sandstrom
+# Copyright (c) 2011-2013 Raphaƫl Barrois
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+"""Tests for deprecated features."""
+
+import warnings
+
+import factory
+
+from .compat import mock, unittest
+from . import tools
+
+
+class DeprecationTests(unittest.TestCase):
+ def test_factory_for(self):
+ class Foo(object):
+ pass
+
+ with warnings.catch_warnings(record=True) as w:
+ warnings.simplefilter('always')
+ class FooFactory(factory.Factory):
+ FACTORY_FOR = Foo
+
+ self.assertEqual(1, len(w))
+ warning = w[0]
+ # Message is indeed related to the current file
+ # This is to ensure error messages are readable by end users.
+ self.assertEqual(__file__, warning.filename)
+ self.assertIn('FACTORY_FOR', str(warning.message))
+ self.assertIn('target', str(warning.message))