5 new revisions:

Revision: 7a7f4c017f8d
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 05:30:21 2011
Log:      never return None from elem.text
http://code.google.com/p/robotframework/source/detail?r=7a7f4c017f8d

Revision: 96011088c6d2
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 05:56:52 2011
Log:      test for split log
http://code.google.com/p/robotframework/source/detail?r=96011088c6d2

Revision: 6663cef19c79
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:42:53 2011
Log:      Add test to check splitlog
http://code.google.com/p/robotframework/source/detail?r=6663cef19c79

Revision: c12603feefa9
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:43:29 2011
Log:      merge
http://code.google.com/p/robotframework/source/detail?r=c12603feefa9

Revision: 7c0a969226a1
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:43:36 2011
Log:      Automated merge with https://code.google.com/p/robotframework/
http://code.google.com/p/robotframework/source/detail?r=7c0a969226a1

==============================================================================
Revision: 7a7f4c017f8d
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 05:30:21 2011
Log:      never return None from elem.text
http://code.google.com/p/robotframework/source/detail?r=7a7f4c017f8d

Modified:
 /src/robot/result/builders.py

=======================================
--- /src/robot/result/builders.py       Mon Nov 28 04:43:57 2011
+++ /src/robot/result/builders.py       Mon Nov 28 05:30:21 2011
@@ -233,7 +233,7 @@
         return [MetadataItemElement]

     def end(self, elem, result):
-        result.metadata[elem.get('name')] = elem.text
+        result.metadata[elem.get('name')] = elem.text or ''
         return result


@@ -248,7 +248,7 @@
     tag = 'tag'

     def end(self, elem, result):
-        result.tags.add(elem.text)
+        result.tags.add(elem.text or '')
         return result



==============================================================================
Revision: 96011088c6d2
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 05:56:52 2011
Log:      test for split log
http://code.google.com/p/robotframework/source/detail?r=96011088c6d2

Modified:
 /utest/result/test_jsoning.py

=======================================
--- /utest/result/test_jsoning.py       Wed Nov 16 12:04:48 2011
+++ /utest/result/test_jsoning.py       Mon Nov 28 05:56:52 2011
@@ -9,7 +9,7 @@
from robot.result.jsondatamodelhandlers import _Handler, KeywordHandler, StatusHandler
 from robot.result.testcase import TestCase
 from robot.result.testsuite import TestSuite
-from robot.utils.asserts import assert_equals
+from robot.utils.asserts import assert_equals, assert_true


 class Handler(_Handler):
@@ -29,10 +29,10 @@

 class _PartialJSModelCreator(JSModelCreator):

-    def __init__(self):
+    def __init__(self, splitlog=False):
         self._datamodel = None
         self._handlers = []
-        self._context = Context()
+        self._context = Context(split_log=splitlog)
         self._handlers.append(Handler(self._context))


@@ -165,20 +165,43 @@
             self._assert_text(tag_json, tag)

     def test_suite_jsoning(self):
+        suite = self._create_suite()
+        suite.visit(self._visitor)
+        self._verify_suite(self.datamodel[0], suite)
+
+    def test_suite_jsoning_with_splitlog(self):
+        suite = self._create_suite()
+        self._visitor = _PartialJSModelCreator(splitlog=True)
+        self._context = self._visitor._context
+        suite.visit(self._visitor)
+ self._verify_keywords_splitted_from_suite_keywords(self.datamodel[0][8]) + self._verify_keywords_splitted_from_tests(self.datamodel[0][6][0][7])
+
+ def _verify_keywords_splitted_from_suite_keywords(self, suite_keywords):
+        for kw in suite_keywords:
+            self._verify_empty_list_or_int(kw[-2])
+
+    def _verify_keywords_splitted_from_tests(self, tests):
+        for test in tests:
+            self._verify_empty_list_or_int(test[6])
+
+    def _verify_empty_list_or_int(self, item):
+        assert_true(item == [] or isinstance(item, int))
+
+    def _create_suite(self):
         suite = TestSuite(source='../somewhere',
                           name='Somewhere',
                           doc='suite <b>documentation</b>',
-                          metadata={'key<':'value<!>',
-                                    'key2>':'va>lue2'})
+                          metadata={'key<': 'value<!>',
+                                    'key2>': 'va>lue2'})
         suite.starttime = '20000101 02:23:01.821'
-        suite.endtime   = '20011221 11:31:12.371'
-        suite.message   = 'so long and thank you for all the fish!'
-        suite.keywords.create(type='setup')
+        suite.endtime = '20011221 11:31:12.371'
+        suite.message = 'so long and thank you for all the fish!'
+ suite.keywords.create(type='setup').keywords.create(name='some keyword')
         subsuite = suite.suites.create(name='subsuite')
-        subsuite.tests.create(name='test', status='PASS')
+ subsuite.tests.create(name='test', status='PASS').keywords.create(name='some other keyword')
         suite.keywords.create(type='teardown')
-        suite.visit(self._visitor)
-        self._verify_suite(self.datamodel[0], suite)
+        return suite

     def _verify_suite(self, suite_json, suite):
         self._assert_text(suite_json[0], suite.name)

==============================================================================
Revision: 6663cef19c79
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:42:53 2011
Log:      Add test to check splitlog
http://code.google.com/p/robotframework/source/detail?r=6663cef19c79

Modified:
 /utest/result/test_jsoning.py

=======================================
--- /utest/result/test_jsoning.py       Mon Nov 28 05:56:52 2011
+++ /utest/result/test_jsoning.py       Mon Nov 28 06:42:53 2011
@@ -177,6 +177,21 @@
self._verify_keywords_splitted_from_suite_keywords(self.datamodel[0][8]) self._verify_keywords_splitted_from_tests(self.datamodel[0][6][0][7])

+    def test_splitlog_keywords_with_strings_are_in_separate_json(self):
+        self._visitor = _PartialJSModelCreator(splitlog=True)
+        self._context = self._visitor._context
+        self._context.start_suite()
+        test = TestCase(name='some name')
+        test.keywords.create(name='some other name')
+        parent = lambda:0
+        parent.criticality = parent
+        parent.test_is_critical = lambda *args: True
+        test.parent = parent
+        test.visit(self._visitor)
+ model, strings = self._context.split_results[self.datamodel[0][6]-1]
+        assert_equals(strings[model[0][1]], '*some other name')
+
+
def _verify_keywords_splitted_from_suite_keywords(self, suite_keywords):
         for kw in suite_keywords:
             self._verify_empty_list_or_int(kw[-2])

==============================================================================
Revision: c12603feefa9
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:43:29 2011
Log:      merge
http://code.google.com/p/robotframework/source/detail?r=c12603feefa9



==============================================================================
Revision: 7c0a969226a1
Author:   Mikko Korpela <[email protected]>
Date:     Mon Nov 28 06:43:36 2011
Log:      Automated merge with https://code.google.com/p/robotframework/
http://code.google.com/p/robotframework/source/detail?r=7c0a969226a1


Reply via email to