Author: andrej
Date: Thu Feb 14 11:37:51 2013
New Revision: 1446127

URL: http://svn.apache.org/r1446127
Log:
fix unit tests after adding SortInstruction, prepare unit-test for #389 wiki 
syntax stripping

Modified:
    incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/api.py
    incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/base.py
    
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/index_with_whoosh.py
    incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/web_ui.py
    
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/whoosh_backend.py

Modified: incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/api.py
URL: 
http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/api.py?rev=1446127&r1=1446126&r2=1446127&view=diff
==============================================================================
--- incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/api.py 
(original)
+++ incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/api.py Thu Feb 
14 11:37:51 2013
@@ -20,7 +20,7 @@
 import unittest
 import tempfile
 import shutil
-from bhsearch.api import BloodhoundSearchApi, ASC
+from bhsearch.api import BloodhoundSearchApi, ASC, SortInstruction
 from bhsearch.query_parser import DefaultQueryParser
 from bhsearch.tests.base import BaseBloodhoundSearchTest
 from bhsearch.search_resources.ticket_search import TicketSearchParticipant
@@ -110,7 +110,7 @@ class ApiQueryWithWhooshTestCase(BaseBlo
         results = self.search_api.query(
             "*",
             filter= ['status:"closed"', 'component:"c1"'],
-            sort= [("id", ASC)]
+            sort= [SortInstruction("id", ASC)]
         )
         self.print_result(results)
         #assert

Modified: incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/base.py
URL: 
http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/base.py?rev=1446127&r1=1446126&r2=1446127&view=diff
==============================================================================
--- incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/base.py 
(original)
+++ incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/base.py Thu Feb 
14 11:37:51 2013
@@ -28,17 +28,28 @@ from pprint import pprint
 
 from bhsearch.web_ui import BloodhoundSearchModule
 from trac.ticket import Ticket, Milestone
-from trac.test import EnvironmentStub
+from trac.test import EnvironmentStub, Mock, MockPerm
+from trac.web import Href, arg_list_to_args
 from trac.wiki import WikiPage
 
+BASE_PATH = "/main/"
+
 class BaseBloodhoundSearchTest(unittest.TestCase):
 
-    def setUp(self, enabled = None):
+    def setUp(self, enabled = None, create_req = False):
         if not enabled:
             enabled = ['bhsearch.*']
         self.env = EnvironmentStub(enable=enabled)
         self.env.path = tempfile.mkdtemp('bhsearch-tempenv')
         self.env.config.set('bhsearch', 'silence_on_error', "False")
+        if create_req:
+            self.req = Mock(
+                perm=MockPerm(),
+                chrome={'logo': {}},
+                href=Href("/main"),
+                base_path=BASE_PATH,
+                args=arg_list_to_args([]),
+            )
 
     def tearDown(self):
         shutil.rmtree(self.env.path)

Modified: 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/index_with_whoosh.py
URL: 
http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/index_with_whoosh.py?rev=1446127&r1=1446126&r2=1446127&view=diff
==============================================================================
--- 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/index_with_whoosh.py
 (original)
+++ 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/index_with_whoosh.py
 Thu Feb 14 11:37:51 2013
@@ -17,6 +17,7 @@
 #  KIND, either express or implied.  See the License for the
 #  specific language governing permissions and limitations
 #  under the License.
+from contextlib import closing
 
 import unittest
 import shutil
@@ -26,7 +27,8 @@ from bhsearch.tests.base import BaseBloo
 from bhsearch.search_resources.ticket_search import TicketIndexer
 
 from bhsearch.whoosh_backend import WhooshBackend
-
+from trac.test import MockPerm
+from trac.web import Href
 
 class IndexWhooshTestCase(BaseBloodhoundSearchTest):
     def setUp(self):
@@ -114,9 +116,60 @@ class IndexWhooshTestCase(BaseBloodhound
         self.print_result(results)
         self.assertEqual(2, results.hits)
 
+class FormattingTestCase(BaseBloodhoundSearchTest):
+    def setUp(self):
+        super(FormattingTestCase, self).setUp(
+            ['trac.*', 'bhsearch.*'],
+            create_req=True,
+        )
+
+    def test_can_format_wiki_to_text(self):
+        wiki_content = """= Header #overview
+
+        '''bold''', ''italic'', '''''Wikipedia style'''''
+
+        {{{
+        code
+        }}}
+
+        [[PageOutline]]
+
+        || '''Table''' || sampe ||
+
+          - list
+          - sample
+
+        [[Image(mockup_tickets.png)]] [wiki:SomePage p1] [ticket:1 ticket one]
+        http://www.edgewall.com/,
+        [http://www.edgewall.com Edgewall Software]
+
+        [#point1]
+        """
+#        wiki_content = """
+#'''''one''''', '''''two''''', '''''three''''', '''''four'''''
+#        """
+
+        page = self.create_wiki("Dummy wiki", wiki_content)
+        from trac.mimeview.api import RenderingContext
+        context = RenderingContext(
+            page.resource,
+            href=Href('/'),
+            perm=MockPerm(),
+        )
+        context.req = None # 1.0 FIXME .req shouldn't be required by formatter
+#        result = format_to_oneliner(self.env, context, wiki_content)
+#        from trac.wiki.formatter import format_to_oneliner
+        from trac.web.chrome import  format_to_html
+        result = format_to_html(self.env, context, wiki_content)
+        print result
+#
+
 
 def suite():
-    return unittest.makeSuite(IndexWhooshTestCase, 'test')
+    test_suite = unittest.TestSuite()
+    test_suite.addTest(unittest.makeSuite(IndexWhooshTestCase, 'test'))
+    test_suite.addTest(unittest.makeSuite(FormattingTestCase, 'test'))
+    return test_suite
 
 if __name__ == '__main__':
     unittest.main()

Modified: incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/web_ui.py
URL: 
http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/web_ui.py?rev=1446127&r1=1446126&r2=1446127&view=diff
==============================================================================
--- incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/web_ui.py 
(original)
+++ incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/web_ui.py Thu 
Feb 14 11:37:51 2013
@@ -39,7 +39,12 @@ DEFAULT_DOCS_PER_PAGE = 10
 
 class WebUiTestCaseWithWhoosh(BaseBloodhoundSearchTest):
     def setUp(self):
-        super(WebUiTestCaseWithWhoosh, self).setUp(['trac.*', 'bhsearch.*'])
+        super(WebUiTestCaseWithWhoosh, self).setUp(
+            ['trac.*', 'bhsearch.*'],
+            create_req=True,
+        )
+        self.req.redirect = self.redirect
+
         whoosh_backend = WhooshBackend(self.env)
         whoosh_backend.recreate_index()
 

Modified: 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/whoosh_backend.py
URL: 
http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/whoosh_backend.py?rev=1446127&r1=1446126&r2=1446127&view=diff
==============================================================================
--- 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/whoosh_backend.py 
(original)
+++ 
incubator/bloodhound/trunk/bloodhound_search/bhsearch/tests/whoosh_backend.py 
Thu Feb 14 11:37:51 2013
@@ -22,7 +22,7 @@ from datetime import datetime
 import unittest
 import tempfile
 import shutil
-from bhsearch.api import ASC, DESC, SCORE
+from bhsearch.api import ASC, DESC, SCORE, SortInstruction
 from bhsearch.query_parser import DefaultQueryParser
 from bhsearch.tests.base import BaseBloodhoundSearchTest
 from bhsearch.whoosh_backend import (WhooshBackend,
@@ -50,7 +50,7 @@ class WhooshBackendTestCase(BaseBloodhou
         self.whoosh_backend.add_doc(dict(id="2", type="ticket"))
         result = self.whoosh_backend.query(
             query.Every(),
-            sort = [("id", ASC)],
+            sort = [SortInstruction("id", ASC)],
         )
         self.print_result(result)
         self.assertEqual(2, result.hits)
@@ -99,7 +99,7 @@ class WhooshBackendTestCase(BaseBloodhou
         self.whoosh_backend.add_doc(dict(id="1", type="ticket1"))
         result = self.whoosh_backend.query(
             query.Every(),
-            sort = [("type", ASC), ("id", ASC)],
+            sort = [SortInstruction("type", ASC), SortInstruction("id", ASC)],
             fields=("id", "type"),
         )
         self.print_result(result)
@@ -116,7 +116,7 @@ class WhooshBackendTestCase(BaseBloodhou
         self.whoosh_backend.add_doc(dict(id="1", type="ticket1"))
         result = self.whoosh_backend.query(
             query.Every(),
-            sort = [("type", ASC), ("id", DESC)],
+            sort = [SortInstruction("type", ASC), SortInstruction("id", DESC)],
             fields=("id", "type"),
         )
         self.print_result(result)
@@ -163,7 +163,10 @@ class WhooshBackendTestCase(BaseBloodhou
 
         result = self.whoosh_backend.query(
             parsed_query,
-            sort = [(SCORE, ASC), ("time", DESC)],
+            sort = [
+                SortInstruction(SCORE, ASC),
+                SortInstruction("time", DESC)
+            ],
         )
         self.print_result(result)
         self.assertEqual(3, result.hits)
@@ -181,7 +184,7 @@ class WhooshBackendTestCase(BaseBloodhou
         self.whoosh_backend.add_doc(dict(id="3", type="wiki", product="A"))
         result = self.whoosh_backend.query(
             query.Every(),
-            sort = [("type", ASC), ("id", DESC)],
+            sort = [SortInstruction("type", ASC), SortInstruction("id", DESC)],
             fields=("id", "type"),
             facets= ("type", "product")
         )
@@ -207,7 +210,7 @@ class WhooshBackendTestCase(BaseBloodhou
     def test_can_return_empty_result(self):
         result = self.whoosh_backend.query(
             query.Every(),
-            sort = [("type", ASC), ("id", DESC)],
+            sort = [SortInstruction("type", ASC), SortInstruction("id", DESC)],
             fields=("id", "type"),
             facets= ("type", "product")
         )


Reply via email to