You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bloodhound.apache.org by ju...@apache.org on 2013/02/11 11:09:16 UTC
svn commit: r1444713 - in
/incubator/bloodhound/branches/bep_0003_multiproduct:
bloodhound_multiproduct/tests/env.py
bloodhound_multiproduct/tests/ticket/conversion.py trac/trac/web/chrome.py
Author: jure
Date: Mon Feb 11 10:09:16 2013
New Revision: 1444713
URL: http://svn.apache.org/r1444713
Log:
#355, patch t355_r1442601_trac_test_ticket_conversion.diff applied (from Olemis), test cases for ticket MIME conversions
Added:
incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/ticket/conversion.py
Modified:
incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/env.py
incubator/bloodhound/branches/bep_0003_multiproduct/trac/trac/web/chrome.py
Modified: incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/env.py
URL: http://svn.apache.org/viewvc/incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/env.py?rev=1444713&r1=1444712&r2=1444713&view=diff
==============================================================================
--- incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/env.py (original)
+++ incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/env.py Mon Feb 11 10:09:16 2013
@@ -161,8 +161,10 @@ class MultiproductTestCase(unittest.Test
def _upgrade_mp(self, env):
r"""Apply multi product upgrades
"""
+ # Do not break wiki parser ( see #373 )
env.disable_component(TicketModule)
env.disable_component(ReportModule)
+
self.mpsystem = MultiProductSystem(env)
try:
self.mpsystem.upgrade_environment(env.db_transaction)
Added: incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/ticket/conversion.py
URL: http://svn.apache.org/viewvc/incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/ticket/conversion.py?rev=1444713&view=auto
==============================================================================
--- incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/ticket/conversion.py (added)
+++ incubator/bloodhound/branches/bep_0003_multiproduct/bloodhound_multiproduct/tests/ticket/conversion.py Mon Feb 11 10:09:16 2013
@@ -0,0 +1,87 @@
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+"""Tests for Apache(TM) Bloodhound's MIME conversions for tickets in
+product environments"""
+
+import os.path
+import unittest
+
+from trac.test import Mock
+from trac.mimeview.api import Mimeview
+from trac.ticket.tests.conversion import TicketConversionTestCase
+from trac.web.href import Href
+
+from multiproduct.ticket.web_ui import ProductTicketModule
+from multiproduct.env import ProductEnvironment
+from tests.env import MultiproductTestCase
+
+class ProductTicketConversionTestCase(TicketConversionTestCase, \
+ MultiproductTestCase):
+
+ def setUp(self):
+ self._mp_setup()
+ self.global_env = self.env
+ self.env = ProductEnvironment(self.global_env, self.default_product)
+
+ # Product name inserted in RSS feed
+ self.env.product._data['name'] = 'My Project'
+
+ self.env.config.set('trac', 'templates_dir',
+ os.path.join(os.path.dirname(self.env.path),
+ 'templates'))
+ self.ticket_module = ProductTicketModule(self.env)
+ self.mimeview = Mimeview(self.env)
+ self.req = Mock(base_path='/trac.cgi', path_info='',
+ href=Href('/trac.cgi'), chrome={'logo': {}},
+ abs_href=Href('http://example.org/trac.cgi'),
+ environ={}, perm=[], authname='-', args={}, tz=None,
+ locale='', session=None, form_token=None)
+
+ def test_csv_conversion(self):
+ ticket = self._create_a_ticket()
+ csv = self.mimeview.convert_content(self.req, 'trac.ticket.Ticket',
+ ticket, 'csv')
+ self.assertEqual(('\xef\xbb\xbf'
+ 'id,summary,reporter,owner,description,status,'
+ 'product,keywords,cc\r'
+ '\n1,Foo,santa,,Bar,,,,\r\n',
+ 'text/csv;charset=utf-8', 'csv'), csv)
+
+ def test_tab_conversion(self):
+ ticket = self._create_a_ticket()
+ csv = self.mimeview.convert_content(self.req, 'trac.ticket.Ticket',
+ ticket, 'tab')
+ self.assertEqual(('\xef\xbb\xbf'
+ 'id\tsummary\treporter\towner\tdescription\tstatus\t'
+ 'product\tkeywords\tcc\r\n'
+ '1\tFoo\tsanta\t\tBar\t\t\t\t\r\n',
+ 'text/tab-separated-values;charset=utf-8', 'tsv'),
+ csv)
+
+ def tearDown(self):
+ self.global_env.reset_db()
+
+def test_suite():
+ return unittest.TestSuite([
+ unittest.makeSuite(ProductTicketConversionTestCase,'test'),
+ ])
+
+if __name__ == '__main__':
+ unittest.main(defaultTest='test_suite')
+
Modified: incubator/bloodhound/branches/bep_0003_multiproduct/trac/trac/web/chrome.py
URL: http://svn.apache.org/viewvc/incubator/bloodhound/branches/bep_0003_multiproduct/trac/trac/web/chrome.py?rev=1444713&r1=1444712&r2=1444713&view=diff
==============================================================================
--- incubator/bloodhound/branches/bep_0003_multiproduct/trac/trac/web/chrome.py (original)
+++ incubator/bloodhound/branches/bep_0003_multiproduct/trac/trac/web/chrome.py Mon Feb 11 10:09:16 2013
@@ -803,7 +803,7 @@ class Chrome(Component):
def populate_data(self, req, data):
d = self._default_context_data.copy()
d['trac'] = {
- 'version': pkg_resources.resource_string('trac', 'TRAC_VERSION'),
+ 'version': pkg_resources.resource_string('trac', 'TRAC_VERSION').strip(),
'homepage': 'http://trac.edgewall.org/', # FIXME: use setup data
}