Hi Ryan,
Here are the test failures that I get for multiproduct module. It seems
like the test cases test_regression_bh_539,
test_regression_bh_539_concurrent and test_milestone_threads are failing
for both of us. I will go through the failure tests and try to fix the
issues.
Anyhow I got these test results before applying the Trac update changes.
After applying the changes there are many test failures in
bloodhound_multiproduct, bloodhound_relations and bloodhound_search modules.
======================================================================
FAIL: test_regression_bh_539 (tests.env.ProductEnvConfigTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"/Users/dammina/code/apache-bh/svn-trunk/bloodhound/bloodhound_multiproduct/tests/env.py",
line 754, in test_regression_bh_539
"Expected component enabled")
AssertionError: Expected component enabled
======================================================================
FAIL: test_regression_bh_539_concurrent (tests.env.ProductEnvConfigTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"/Users/dammina/code/apache-bh/svn-trunk/bloodhound/bloodhound_multiproduct/tests/env.py",
line 815, in test_regression_bh_539_concurrent
"Expected component enabled")
AssertionError: Expected component enabled
======================================================================
FAIL: test_milestone_completed_ok
(tests.admin.console.ProductTracAdminTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"/Users/dammina/code/apache-bh/svn-trunk/bloodhound/trac/trac/admin/tests/console.py",
line 1078, in test_milestone_completed_ok
self.assertEqual(self.expected_results[test_name], output)
File
"/Users/dammina/code/apache-bh/svn-trunk/bloodhound/trac/trac/admin/tests/console.py",
line 145, in assertEqual
output, diff()))
AssertionError: u'\nName Due
Completed\n------------------------------------\nmilestone2
2004-01-11 00:00:00\nmilestone1\nmilestone3\nmilestone4\n\n' != u'\nName
Due Completed\n------------------------------------\nmilestone2
2004-01-11 01:30:00\nmilestone1\nmilestone3\nmilestone4\n\n'
--- expected
+++ actual
@@ -1,7 +1,7 @@
Name Due Completed
------------------------------------
-milestone2 2004-01-11 00:00:00
+milestone2 2004-01-11 01:30:00
milestone1
milestone3
milestone4
======================================================================
FAIL: test_milestone_threads (tests.ticket.model.ProductMilestoneTestCase)
Ensure that in threaded (e.g. mod_wsgi) situations, we get
----------------------------------------------------------------------
Traceback (most recent call last):
File
"/Users/dammina/code/apache-bh/svn-trunk/bloodhound/bloodhound_multiproduct/tests/ticket/model.py",
line 218, in test_milestone_threads
self.assertEqual(r['from_t'], r['from_db'])
AssertionError: Items in the second set but not the first:
u'milestone_from_Thread-3'
----------------------------------------------------------------------
Ran 1288 tests in 343.166s
FAILED (failures=4, errors=1, skipped=22)
Thanks,
Dammina
On Sun, Dec 11, 2016 at 3:34 PM, Ryan J Ollos <[email protected]> wrote:
> On Sun, Dec 11, 2016 at 1:03 AM Dammina Sahabandu <[email protected]>
> wrote:
>
> Hi Ryan,
>
> I made a few minor comments, nothing big, I think we are almost there.
>
>
> I have gone through your comments and committed the required changes to the
> same branch. Please note that the changes are squashed to their respective
> commits.
>
>
> I tried running the unit tests on bloodhound trunk. There are some things
> that need fixing. I will try to spend some time on that in the coming week.
>
>
> That would be really great :)
>
> Thanks,
> Dammina
>
>
> Thanks, looks good!
>
> I made some changes and the tests are executable now. Prior to the changes
> there were some import errors.
>
> To run the tests, cd into the package directory, and run "python setup.py
> test". Example:
>
> $ cd bloodhound_relations
> $ python setup.py test
>
> I saw some failures in bloodhound_multiproduct. Would you mind taking a
> look into the failures? We could start by checking whether you get the same
> errors as I do. I'll append the failures I saw to the end of this email.
>
> - Ryan
>
> ======================================================================
> ERROR: test_batch_ticket_insert_after_upgrade
> (multiproduct.tests.upgrade.EnvironmentUpgradeTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/upgrade.py",
> line 405, in test_batch_ticket_insert_after_upgrade
> db("""INSERT INTO ticket (summary) SELECT summary FROM tmp""")
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/dbcursor.py",
> line 122, in execute
> return self.connection.execute(query, params=params)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/db/util.py",
> line 121, in execute
> cursor.execute(query, params)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/dbcursor.py",
> line 87, in execute
> return super(BloodhoundIterableCursor,
> self).execute(translate_sql(self.env, sql), args=args)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/db/util.py",
> line 66, in execute
> return self.cursor.execute(sql)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/db/sqlite_backend.py",
> line 78, in execute
> result = PyFormatCursor.execute(self, *args)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/db/sqlite_backend.py",
> line 56, in execute
> args or [])
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/db/sqlite_backend.py",
> line 48, in _rollback_on_error
> return function(self, *args, **kwargs)
> OperationalError: 2 values for 3 columns
>
> ======================================================================
> ERROR: test_missing_product
> (multiproduct.tests.web_ui.ProductModuleTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 255, in test_missing_product
> self._dispatch(req, self.global_env)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 95, in _dispatch
> return RequestDispatcher(env).dispatch(req)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 224, in dispatch
> self._post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 338, in _post_process_request
> resp = f.post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/product_admin.py",
> line 83, in post_process_request
> raise exc
> TestAdminHandledException
>
> ======================================================================
> ERROR: test_product_edit (multiproduct.tests.web_ui.ProductModuleTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 290, in test_product_edit
> self._dispatch(req, self.global_env)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 95, in _dispatch
> return RequestDispatcher(env).dispatch(req)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 224, in dispatch
> self._post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 338, in _post_process_request
> resp = f.post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/product_admin.py",
> line 83, in post_process_request
> raise exc
> TestAdminHandledException
>
> ======================================================================
> ERROR: test_product_list (multiproduct.tests.web_ui.ProductModuleTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 175, in test_product_list
> self._dispatch(req, self.global_env)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 95, in _dispatch
> return RequestDispatcher(env).dispatch(req)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 224, in dispatch
> self._post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 338, in _post_process_request
> resp = f.post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/product_admin.py",
> line 83, in post_process_request
> raise exc
> TestAdminHandledException
>
> ======================================================================
> ERROR: test_product_new (multiproduct.tests.web_ui.ProductModuleTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 197, in test_product_new
> self._dispatch(req, self.global_env)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 95, in _dispatch
> return RequestDispatcher(env).dispatch(req)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 224, in dispatch
> self._post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 338, in _post_process_request
> resp = f.post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/product_admin.py",
> line 83, in post_process_request
> raise exc
> TestAdminHandledException
>
> ======================================================================
> ERROR: test_product_view (multiproduct.tests.web_ui.ProductModuleTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 227, in test_product_view
> self._dispatch(req, self.global_env)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/web_ui.py",
> line 95, in _dispatch
> return RequestDispatcher(env).dispatch(req)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 224, in dispatch
> self._post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/web/main.py",
> line 338, in _post_process_request
> resp = f.post_process_request(req, *resp)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/product_admin.py",
> line 83, in post_process_request
> raise exc
> TestAdminHandledException
>
> ======================================================================
> FAIL: test_regression_bh_539
> (multiproduct.tests.env.ProductEnvConfigTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/env.py",
> line 742, in test_regression_bh_539
> "Expected component disabled")
> AssertionError: Expected component disabled
>
> ======================================================================
> FAIL: test_regression_bh_539_concurrent
> (multiproduct.tests.env.ProductEnvConfigTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/tests/env.py",
> line 791, in test_regression_bh_539_concurrent
> "Expected component disabled")
> AssertionError: Expected component disabled
>
> ======================================================================
> FAIL: test_help_ok
> (multiproduct.tests.admin.console.ProductTracAdminTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/admin/tests/console.py",
> line 162, in test_help_ok
> self.assertEqual(expected_results, output)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/admin/tests/console.py",
> line 145, in assertEqual
> output, diff()))
> AssertionError: u'trac-admin - The Trac Administration Console
> 1.0.1\n\nUsage: trac-admin </path/to/projenv> [command [subcommand] [option
> ...]]\n\nInvoking trac-admin without command starts interactive
> mode.\n\nhelp Show documentation\ninitenv
> Create and initialize a new environment\nattachment add Attach a
> file to a resource\nattachment export Export an attachment from a
> resource to a file or stdout\nattachment list List attachments of a
> resource\nattachment remove Remove an attachment from a
> resource\nchangeset added Notify trac about changesets added to a
> repository\nchangeset modified Notify trac about changesets modified in a
> repository\ncomponent add Add a new component\ncomponent chown
> Change component ownership\ncomponent list Show available
> components\ncomponent remove Remove/uninstall a component\ncomponent
> rename Rename a component\nconfig get Get the value of the
> given option in "trac.ini"\nconfig remove Remove the specified
> option from "trac.ini"\nconfig set Set the value for the given
> option in "trac.ini"\ndeploy Extract static resources from
> Trac and all plugins\nhotcopy Make a hot backup copy of an
> environment\nmilestone add Add milestone\nmilestone completed Set
> milestone complete date\nmilestone due Set milestone due
> date\nmilestone list Show milestones\nmilestone remove Remove
> milestone\nmilestone rename Rename milestone\npermission add Add
> a new permission rule\npermission export Export permission rules to a
> file or stdout as CSV\npermission import Import permission rules from a
> file or stdin as CSV\npermission list List permission
> rules\npermission remove Remove a permission rule\npriority add
> Add a priority value option\npriority change Change a priority
> value\npriority list Show possible ticket priorities\npriority order
> Move a priority value up or down in the list\npriority remove
> Remove a priority value\nrepository add Add a source
> repository\nrepository alias Create an alias for a
> repository\nrepository list List source repositories\nrepository
> remove Remove a source repository\nrepository resync Re-synchronize
> trac with repositories\nrepository set Set an attribute of a
> repository\nrepository sync Resume synchronization of
> repositories\nresolution add Add a resolution value
> option\nresolution change Change a resolution value\nresolution list
> Show possible ticket resolutions\nresolution order Move a resolution
> value up or down in the list\nresolution remove Remove a resolution
> value\nsession add Create a session for the given sid\nsession
> delete Delete the session of the specified sid\nsession list
> List the name and email for the given sids\nsession purge Purge all
> anonymous sessions older than the given age\nsession set Set the
> name or email attribute of the given sid\nseverity add Add a
> severity value option\nseverity change Change a severity
> value\nseverity list Show possible ticket severities\nseverity order
> Move a severity value up or down in the list\nseverity remove
> Remove a severity value\nticket remove Remove ticket\nticket_type
> add Add a ticket type\nticket_type change Change a ticket
> type\nticket_type list Show possible ticket types\nticket_type order
> Move a ticket type up or down in the list\nticket_type remove Remove a
> ticket type\nupgrade Upgrade database to current
> version\nversion add Add version\nversion list Show
> versions\nversion remove Remove version\nversion rename Rename
> version\nversion time Set version date\nwiki dump Export
> wiki pages to files named by title\nwiki export Export wiki page
> to file or stdout\nwiki import Import wiki page from file or
> stdin\nwiki list List wiki pages\nwiki load Import
> wiki pages from files\nwiki remove Remove wiki page\nwiki rename
> Rename wiki page\nwiki replace Replace the content of wiki
> pages from files (DANGEROUS!)\nwiki upgrade Upgrade default wiki
> pages to current version\n' != u'trac-admin - The Trac Administration
> Console 1.0.1\n\nUsage: trac-admin </path/to/projenv> [command [subcommand]
> [option ...]]\n\nInvoking trac-admin without command starts interactive
> mode.\n\nhelp Show documentation\ninitenv
> Create and initialize a new environment\nattachment add Attach a
> file to a resource\nattachment export Export an attachment from a
> resource to a file or stdout\nattachment list List attachments of a
> resource\nattachment remove Remove an attachment from a
> resource\nchangeset added Notify trac about changesets added to a
> repository\nchangeset modified Notify trac about changesets modified in a
> repository\ncomponent add Add a new component\ncomponent chown
> Change component ownership\ncomponent list Show available
> components\ncomponent remove Remove/uninstall a component\ncomponent
> rename Rename a component\nconfig get Get the value of the
> given option in "trac.ini"\nconfig remove Remove the specified
> option from "trac.ini"\nconfig set Set the value for the given
> option in "trac.ini"\ndeploy Extract static resources from
> Trac and all plugins\nfail Always fail\nhotcopy
> Make a hot backup copy of an environment\nmilestone add Add
> milestone\nmilestone completed Set milestone complete date\nmilestone due
> Set milestone due date\nmilestone list Show
> milestones\nmilestone remove Remove milestone\nmilestone rename
> Rename milestone\npermission add Add a new permission
> rule\npermission export Export permission rules to a file or stdout as
> CSV\npermission import Import permission rules from a file or stdin as
> CSV\npermission list List permission rules\npermission remove
> Remove a permission rule\npriority add Add a priority value
> option\npriority change Change a priority value\npriority list
> Show possible ticket priorities\npriority order Move a priority
> value up or down in the list\npriority remove Remove a priority
> value\nrepository add Add a source repository\nrepository alias
> Create an alias for a repository\nrepository list List source
> repositories\nrepository remove Remove a source repository\nrepository
> resync Re-synchronize trac with repositories\nrepository set Set
> an attribute of a repository\nrepository sync Resume synchronization
> of repositories\nresolution add Add a resolution value
> option\nresolution change Change a resolution value\nresolution list
> Show possible ticket resolutions\nresolution order Move a resolution
> value up or down in the list\nresolution remove Remove a resolution
> value\nsession add Create a session for the given sid\nsession
> delete Delete the session of the specified sid\nsession list
> List the name and email for the given sids\nsession purge Purge all
> anonymous sessions older than the given age\nsession set Set the
> name or email attribute of the given sid\nseverity add Add a
> severity value option\nseverity change Change a severity
> value\nseverity list Show possible ticket severities\nseverity order
> Move a severity value up or down in the list\nseverity remove
> Remove a severity value\nticket remove Remove ticket\nticket_type
> add Add a ticket type\nticket_type change Change a ticket
> type\nticket_type list Show possible ticket types\nticket_type order
> Move a ticket type up or down in the list\nticket_type remove Remove a
> ticket type\nupgrade Upgrade database to current
> version\nversion add Add version\nversion list Show
> versions\nversion remove Remove version\nversion rename Rename
> version\nversion time Set version date\nwiki dump Export
> wiki pages to files named by title\nwiki export Export wiki page
> to file or stdout\nwiki import Import wiki page from file or
> stdin\nwiki list List wiki pages\nwiki load Import
> wiki pages from files\nwiki remove Remove wiki page\nwiki rename
> Rename wiki page\nwiki replace Replace the content of wiki
> pages from files (DANGEROUS!)\nwiki upgrade Upgrade default wiki
> pages to current version\n'
> --- expected
> +++ actual
> @@ -21,6 +21,7 @@
> config remove Remove the specified option from "trac.ini"
> config set Set the value for the given option in "trac.ini"
> deploy Extract static resources from Trac and all plugins
> +fail Always fail
> hotcopy Make a hot backup copy of an environment
> milestone add Add milestone
> milestone completed Set milestone complete date
>
>
> ======================================================================
> FAIL: test_product_help_ok
> (multiproduct.tests.admin.console.ProductTracAdminTestCase)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/admin/console.py",
> line 70, in test_product_help_ok
> self.assertEqual(0, rv)
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/trac/trac/admin/tests/console.py",
> line 129, in assertEqual
> return unittest.TestCase.assertEqual(self, expected_results, output)
> AssertionError: 0 != 2
>
> ======================================================================
> FAIL: test_milestone_threads
> (multiproduct.tests.ticket.model.ProductMilestoneTestCase)
> Ensure that in threaded (e.g. mod_wsgi) situations, we get
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File
> "/Users/rjollos/Documents/Workspace/trac-dev/bloodhound/
> bloodhound-trunk/bloodhound_multiproduct/multiproduct/
> tests/ticket/model.py",
> line 218, in test_milestone_threads
> self.assertEqual(r['from_t'], r['from_db'])
> AssertionError: Items in the second set but not the first:
> u'milestone_from_Thread-3'
>
> ----------------------------------------------------------------------
> Ran 1288 tests in 642.382s
>
> FAILED (failures=5, errors=6, skipped=22)
>
>
> [EOM]
>