Revision: 2557
Author: KariHusa
Date: Fri Feb 26 03:49:09 2010
Log: Added deprecation warnings about settings in init file that will be
removed in 2.5, issue 478
http://code.google.com/p/robotframework/source/detail?r=2557
Modified:
/trunk/src/robot/parsing/metadata.py
/trunk/src/robot/parsing/model.py
=======================================
--- /trunk/src/robot/parsing/metadata.py Thu Feb 25 01:19:34 2010
+++ /trunk/src/robot/parsing/metadata.py Fri Feb 26 03:49:09 2010
@@ -84,7 +84,7 @@
'timeout': 'Timeout' }
-class TestSuiteMetadata(_Metadata):
+class TestCaseFileMetadata(_Metadata):
_names = { 'documentation': 'Documentation',
'document': 'Documentation',
'suitesetup': 'Suite Setup',
@@ -124,6 +124,18 @@
self.user_metadata[name] = value
+class TestSuiteInitFileMetadata(TestCaseFileMetadata):
+ _deprecated_metadata = ['testsetup', 'testteardown', 'defaulttags',
+ 'testtimeout']
+
+ def set(self, item):
+ TestCaseFileMetadata.set(self, item)
+ if utils.normalize(item.name) in self._deprecated_metadata:
+ msg = "Using setting '%s' in init file is deprecated and will
be " \
+ "removed in the next major release." % (item.name)
+ item.report_invalid_syntax(msg, 'WARN')
+
+
class ImportSetting:
def __init__(self, item):
=======================================
--- /trunk/src/robot/parsing/model.py Thu Feb 25 04:20:10 2010
+++ /trunk/src/robot/parsing/model.py Fri Feb 26 03:49:09 2010
@@ -22,7 +22,7 @@
from robot.output import LOGGER
from rawdata import RawData, READERS
-from metadata import TestSuiteMetadata, TestCaseMetadata
+from metadata import TestCaseFileMetadata, TestSuiteInitFileMetadata,
TestCaseMetadata
from keywords import KeywordList
from userkeyword import UserHandlerList
@@ -44,7 +44,7 @@
def __init__(self, rawdata, parent=None):
name, source = self._get_name_and_source(rawdata.source)
BaseTestSuite.__init__(self, name, source, parent)
- metadata = TestSuiteMetadata(rawdata)
+ metadata = self._get_metadata(rawdata)
self.doc = metadata['Documentation']
self.suite_setup = metadata['SuiteSetup']
self.suite_teardown = metadata['SuiteTeardown']
@@ -92,6 +92,9 @@
_BaseSuite.__init__(self, rawdata, parent)
self._create_testcases(rawdata)
+ def _get_metadata(self, rawdata):
+ return TestCaseFileMetadata(rawdata)
+
def _get_source(self, path):
return path
@@ -126,6 +129,9 @@
error = "Test suite directory '%s' contains no test cases." % path
self._create_subsuites(subitems, suitenames, error)
+ def _get_metadata(self, rawdata):
+ return TestSuiteInitFileMetadata(rawdata)
+
def _get_source(self, path):
# 'path' points either to directory or __init__ file inside it
return utils.get_directory(path)
@@ -193,6 +199,9 @@
error = 'Data sources %s contain no test cases.' %
(utils.seq2str(paths))
self._create_subsuites(paths, suitenames, error)
+ def _get_metadata(self, rawdata):
+ return TestCaseFileMetadata(rawdata)
+
def _get_name_and_source(self, path):
return '', None