diff --git a/Allura/allura/tests/decorators.py b/Allura/allura/tests/decorators.py
index 4e6711a..53aa5df 100644
--- a/Allura/allura/tests/decorators.py
+++ b/Allura/allura/tests/decorators.py
@@ -21,7 +21,6 @@
 import contextlib
 from six.moves.urllib.parse import parse_qs
 
-from alluratest.tools import assert_equal
 from ming.orm.ormsession import ThreadLocalORMSession
 from tg import tmpl_context as c
 from mock import patch
diff --git a/Allura/allura/tests/functional/test_admin.py b/Allura/allura/tests/functional/test_admin.py
index a140f17..20fc7a5 100644
--- a/Allura/allura/tests/functional/test_admin.py
+++ b/Allura/allura/tests/functional/test_admin.py
@@ -23,18 +23,16 @@
 
 import tg
 import PIL
-from alluratest.tools import assert_equals, assert_in, assert_not_in, assert_is_not_none, assert_greater
 from ming.orm.ormsession import ThreadLocalORMSession
 from tg import expose
 from tg import tmpl_context as c, app_globals as g
 import mock
-import six
 
 import allura
 from allura.tests import TestController
 from alluratest.pytest_helpers import with_nose_compatibility
 from allura.tests import decorators as td
-from allura.tests.decorators import audits, out_audits
+from allura.tests.decorators import audits
 from alluratest.controller import TestRestApiBase, setup_trove_categories
 from allura import model as M
 from allura.app import SitemapEntry
diff --git a/Allura/allura/tests/functional/test_gravatar.py b/Allura/allura/tests/functional/test_gravatar.py
index 2886df3..b42f64a 100644
--- a/Allura/allura/tests/functional/test_gravatar.py
+++ b/Allura/allura/tests/functional/test_gravatar.py
@@ -18,7 +18,6 @@
 from six.moves.urllib.parse import urlparse, parse_qs
 
 import tg
-from alluratest.tools import assert_equal
 from mock import patch
 
 from allura.tests import TestController
diff --git a/Allura/allura/tests/functional/test_home.py b/Allura/allura/tests/functional/test_home.py
index a27febb..81c11a1 100644
--- a/Allura/allura/tests/functional/test_home.py
+++ b/Allura/allura/tests/functional/test_home.py
@@ -20,7 +20,6 @@
 import os
 
 from tg import tmpl_context as c
-from alluratest.tools import assert_equal, assert_not_in, assert_in
 from ming.orm import ThreadLocalORMSession
 
 import allura
diff --git a/Allura/allura/tests/functional/test_neighborhood.py b/Allura/allura/tests/functional/test_neighborhood.py
index b123cb7..7261e0c 100644
--- a/Allura/allura/tests/functional/test_neighborhood.py
+++ b/Allura/allura/tests/functional/test_neighborhood.py
@@ -25,7 +25,6 @@
 import PIL
 from mock import patch
 from tg import config
-from alluratest.tools import assert_equal, assert_in, assert_not_equal
 from ming.orm.ormsession import ThreadLocalORMSession, session
 from paste.httpexceptions import HTTPFound, HTTPMovedPermanently
 from tg import app_globals as g, tmpl_context as c
diff --git a/Allura/allura/tests/functional/test_personal_dashboard.py b/Allura/allura/tests/functional/test_personal_dashboard.py
index c1f7d3c..06c73de 100644
--- a/Allura/allura/tests/functional/test_personal_dashboard.py
+++ b/Allura/allura/tests/functional/test_personal_dashboard.py
@@ -20,7 +20,6 @@
 import tg
 
 from ming.orm import ThreadLocalORMSession, ThreadLocalODMSession
-from alluratest.tools import assert_equal, assert_in, assert_not_in
 from tg import tmpl_context as c
 
 from allura import model as M
diff --git a/Allura/allura/tests/functional/test_rest.py b/Allura/allura/tests/functional/test_rest.py
index c2a8cef..26d3b56 100644
--- a/Allura/allura/tests/functional/test_rest.py
+++ b/Allura/allura/tests/functional/test_rest.py
@@ -22,7 +22,6 @@
 from bson import ObjectId
 from tg import app_globals as g
 import mock
-from alluratest.tools import assert_equal, assert_in, assert_not_in
 from ming.odm import ThreadLocalODMSession
 from tg import config
 
diff --git a/Allura/allura/tests/functional/test_root.py b/Allura/allura/tests/functional/test_root.py
index 633bdeb..ff19626 100644
--- a/Allura/allura/tests/functional/test_root.py
+++ b/Allura/allura/tests/functional/test_root.py
@@ -29,10 +29,8 @@
 import os
 from unittest import skipIf
 
-import six
-
 from tg import tmpl_context as c
-from alluratest.tools import assert_equal, module_not_available
+from alluratest.tools import module_not_available
 from ming.orm.ormsession import ThreadLocalORMSession
 import mock
 import tg
diff --git a/Allura/allura/tests/functional/test_site_admin.py b/Allura/allura/tests/functional/test_site_admin.py
index ec743bb..788fb4f 100644
--- a/Allura/allura/tests/functional/test_site_admin.py
+++ b/Allura/allura/tests/functional/test_site_admin.py
@@ -20,7 +20,6 @@
 import bson
 
 from mock import patch, MagicMock
-from alluratest.tools import assert_equal, assert_in, assert_not_in
 from ming.odm import ThreadLocalORMSession
 from tg import tmpl_context as c
 from tg import config
@@ -32,7 +31,6 @@
 from allura.lib import helpers as h
 from allura.lib.decorators import task
 from allura.lib.plugin import LocalAuthenticationProvider
-import six
 from alluratest.pytest_helpers import with_nose_compatibility
 
 
diff --git a/Allura/allura/tests/functional/test_trovecategory.py b/Allura/allura/tests/functional/test_trovecategory.py
index 76473d3..ae9057d 100644
--- a/Allura/allura/tests/functional/test_trovecategory.py
+++ b/Allura/allura/tests/functional/test_trovecategory.py
@@ -18,7 +18,6 @@
 import mock
 
 from tg import config
-from alluratest.tools import assert_equals, assert_true, assert_in, assert_equal
 from ming.orm import session
 
 from allura import model as M
diff --git a/Allura/allura/tests/functional/test_user_profile.py b/Allura/allura/tests/functional/test_user_profile.py
index 353a99f..2a5e867 100644
--- a/Allura/allura/tests/functional/test_user_profile.py
+++ b/Allura/allura/tests/functional/test_user_profile.py
@@ -17,7 +17,6 @@
 
 import mock
 import tg
-from alluratest.tools import assert_equal, assert_in, assert_not_in
 
 from alluratest.controller import TestRestApiBase
 from allura.model import Project, User
diff --git a/Allura/allura/tests/model/test_filesystem.py b/Allura/allura/tests/model/test_filesystem.py
index fe88d8a..5625df2 100644
--- a/Allura/allura/tests/model/test_filesystem.py
+++ b/Allura/allura/tests/model/test_filesystem.py
@@ -22,7 +22,6 @@
 import ming
 from tg import tmpl_context as c
 from ming.orm import session, Mapper
-from alluratest.tools import assert_equal
 from mock import patch
 from webob import Request, Response
 
diff --git a/Allura/allura/tests/model/test_neighborhood.py b/Allura/allura/tests/model/test_neighborhood.py
index 2473708..aaa6a96 100644
--- a/Allura/allura/tests/model/test_neighborhood.py
+++ b/Allura/allura/tests/model/test_neighborhood.py
@@ -18,7 +18,6 @@
 """
 Model tests for neighborhood
 """
-from alluratest.tools import with_setup
 
 from allura import model as M
 from allura.tests import decorators as td
diff --git a/Allura/allura/tests/model/test_notification.py b/Allura/allura/tests/model/test_notification.py
index 33d2547..774c8da 100644
--- a/Allura/allura/tests/model/test_notification.py
+++ b/Allura/allura/tests/model/test_notification.py
@@ -20,7 +20,6 @@
 import collections
 
 from tg import tmpl_context as c, app_globals as g
-from alluratest.tools import assert_equal, assert_in
 from ming.orm import ThreadLocalORMSession
 import mock
 import bson
diff --git a/Allura/allura/tests/model/test_project.py b/Allura/allura/tests/model/test_project.py
index 6a1d44a..c4daf94 100644
--- a/Allura/allura/tests/model/test_project.py
+++ b/Allura/allura/tests/model/test_project.py
@@ -18,7 +18,6 @@
 """
 Model tests for project
 """
-from alluratest.tools import with_setup, assert_equals, assert_in
 from tg import tmpl_context as c
 from ming.orm.ormsession import ThreadLocalORMSession
 from formencode import validators as fev
diff --git a/Allura/allura/tests/model/test_repo.py b/Allura/allura/tests/model/test_repo.py
index 84d26bd..b5fffda 100644
--- a/Allura/allura/tests/model/test_repo.py
+++ b/Allura/allura/tests/model/test_repo.py
@@ -20,7 +20,6 @@
 
 import unittest
 import mock
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 from bson import ObjectId
 from ming.orm import session
diff --git a/Allura/allura/tests/model/test_timeline.py b/Allura/allura/tests/model/test_timeline.py
index 00e7ea0..f5af23b 100644
--- a/Allura/allura/tests/model/test_timeline.py
+++ b/Allura/allura/tests/model/test_timeline.py
@@ -15,8 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from alluratest.tools import assert_equal
-
 from allura import model as M
 from allura.tests import decorators as td
 from alluratest.controller import setup_basic_test, setup_global_objects
diff --git a/Allura/allura/tests/scripts/test_create_sitemap_files.py b/Allura/allura/tests/scripts/test_create_sitemap_files.py
index e9d40ec..906ff60 100644
--- a/Allura/allura/tests/scripts/test_create_sitemap_files.py
+++ b/Allura/allura/tests/scripts/test_create_sitemap_files.py
@@ -20,7 +20,6 @@
 import xml.etree.ElementTree as ET
 
 from tg import tmpl_context as c
-from alluratest.tools import assert_in, assert_not_in
 from testfixtures import TempDirectory
 
 from alluratest.controller import setup_basic_test
diff --git a/Allura/allura/tests/scripts/test_delete_projects.py b/Allura/allura/tests/scripts/test_delete_projects.py
index d941435..12d6d69 100644
--- a/Allura/allura/tests/scripts/test_delete_projects.py
+++ b/Allura/allura/tests/scripts/test_delete_projects.py
@@ -18,7 +18,6 @@
 from ming.odm import session, Mapper, ThreadLocalODMSession
 from mock import patch
 from tg import app_globals as g
-from alluratest.tools import assert_equal
 
 from alluratest.controller import TestController
 from allura.tests.decorators import audits, out_audits, with_user_project
diff --git a/Allura/allura/tests/scripts/test_misc_scripts.py b/Allura/allura/tests/scripts/test_misc_scripts.py
index 83c8c14..174bf9c 100644
--- a/Allura/allura/tests/scripts/test_misc_scripts.py
+++ b/Allura/allura/tests/scripts/test_misc_scripts.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 from bson import ObjectId
-from alluratest.tools import assert_equal
 
 from allura.scripts.clear_old_notifications import ClearOldNotifications
 from alluratest.controller import setup_basic_test
diff --git a/Allura/allura/tests/scripts/test_reindexes.py b/Allura/allura/tests/scripts/test_reindexes.py
index c6da7ad..e1f9950 100644
--- a/Allura/allura/tests/scripts/test_reindexes.py
+++ b/Allura/allura/tests/scripts/test_reindexes.py
@@ -14,7 +14,6 @@
 #       KIND, either express or implied.  See the License for the
 #       specific language governing permissions and limitations
 #       under the License.
-from alluratest.tools import assert_in, assert_equal
 from testfixtures import LogCapture
 
 from allura.scripts.reindex_projects import ReindexProjects
diff --git a/Allura/allura/tests/templates/jinja_master/test_lib.py b/Allura/allura/tests/templates/jinja_master/test_lib.py
index 8c46da0..84108aa 100644
--- a/Allura/allura/tests/templates/jinja_master/test_lib.py
+++ b/Allura/allura/tests/templates/jinja_master/test_lib.py
@@ -17,10 +17,8 @@
 
 from tg import config, app_globals as g
 from mock import Mock
-from alluratest.tools import assert_equal
 
-import ming
-from allura.config.app_cfg import ForgeConfig, AlluraJinjaRenderer
+from allura.config.app_cfg import AlluraJinjaRenderer
 from alluratest.controller import setup_basic_test
 from alluratest.pytest_helpers import with_nose_compatibility
 
diff --git a/Allura/allura/tests/test_app.py b/Allura/allura/tests/test_app.py
index 8a6924c..997dd13 100644
--- a/Allura/allura/tests/test_app.py
+++ b/Allura/allura/tests/test_app.py
@@ -23,7 +23,6 @@
 from textwrap import dedent
 
 from alluratest.controller import setup_unit_test
-from alluratest.tools import with_setup
 from allura import app
 from allura.lib.app_globals import Icon
 from allura.lib import mail_util
diff --git a/Allura/allura/tests/test_commands.py b/Allura/allura/tests/test_commands.py
index 18026cc..9e13f60 100644
--- a/Allura/allura/tests/test_commands.py
+++ b/Allura/allura/tests/test_commands.py
@@ -18,12 +18,8 @@
 
 import datetime
 
-import six
-from alluratest.tools import with_setup
 from testfixtures import OutputCapture
 
-from datadiff.tools import assert_equal
-
 from ming.base import Object
 from ming.orm import ThreadLocalORMSession
 from mock import Mock, call, patch
diff --git a/Allura/allura/tests/test_decorators.py b/Allura/allura/tests/test_decorators.py
index 71b70d0..2ef77cd 100644
--- a/Allura/allura/tests/test_decorators.py
+++ b/Allura/allura/tests/test_decorators.py
@@ -20,7 +20,6 @@
 import random
 import gc
 
-from alluratest.tools import assert_equal, assert_not_equal
 from alluratest.pytest_helpers import with_nose_compatibility
 from allura.lib.decorators import task, memoize
 from alluratest.controller import setup_basic_test, setup_global_objects
diff --git a/Allura/allura/tests/test_helpers.py b/Allura/allura/tests/test_helpers.py
index 1e02293..46703b1 100644
--- a/Allura/allura/tests/test_helpers.py
+++ b/Allura/allura/tests/test_helpers.py
@@ -23,8 +23,7 @@
 import PIL
 from mock import Mock, patch
 from tg import tmpl_context as c
-from alluratest.tools import module_not_available, with_setup
-from datadiff import tools as dd
+from alluratest.tools import module_not_available
 from webob import Request
 from webob.exc import HTTPUnauthorized
 from ming.orm import ThreadLocalORMSession
@@ -392,22 +391,19 @@
 http://blah.com/?x=y&a=b - not escaped either
 '''
 
-    dd.assert_equal(h.plain2markdown(text), expected)
+    assert h.plain2markdown(text) == expected
 
-    dd.assert_equal(
-        h.plain2markdown('a foo  bar\n\n    code here?',
-                         preserve_multiple_spaces=True),
-        'a foo&nbsp; bar\n\n&nbsp;&nbsp;&nbsp; code here?')
+    assert h.plain2markdown('a foo  bar\n\n    code here?',
+                            preserve_multiple_spaces=True) == \
+        'a foo&nbsp; bar\n\n&nbsp;&nbsp;&nbsp; code here?'
 
-    dd.assert_equal(
-        h.plain2markdown('\ttab before (stuff)',
-                         preserve_multiple_spaces=True),
-        r'&nbsp;&nbsp;&nbsp; tab before \(stuff\)')
+    assert h.plain2markdown('\ttab before (stuff)',
+                            preserve_multiple_spaces=True) == \
+        r'&nbsp;&nbsp;&nbsp; tab before \(stuff\)'
 
-    dd.assert_equal(
-        h.plain2markdown('\ttab before (stuff)',
-                         preserve_multiple_spaces=False),
-        r'tab before \(stuff\)')
+    assert h.plain2markdown('\ttab before (stuff)',
+                            preserve_multiple_spaces=False) == \
+        r'tab before \(stuff\)'
 
 
 @td.without_module('html2text')
@@ -443,22 +439,19 @@
 back\\\-slash escaped
 '''
 
-    dd.assert_equal(h.plain2markdown(text), expected)
+    assert h.plain2markdown(text) == expected
 
-    dd.assert_equal(
-        h.plain2markdown('a foo  bar\n\n    code here?',
-                         preserve_multiple_spaces=True),
-        'a foo&nbsp; bar\n\n&nbsp;&nbsp;&nbsp; code here?')
+    assert h.plain2markdown('a foo  bar\n\n    code here?',
+                            preserve_multiple_spaces=True) == \
+        'a foo&nbsp; bar\n\n&nbsp;&nbsp;&nbsp; code here?'
 
-    dd.assert_equal(
-        h.plain2markdown('\ttab before (stuff)',
-                         preserve_multiple_spaces=True),
-        r'&nbsp;&nbsp;&nbsp; tab before \(stuff\)')
+    assert h.plain2markdown('\ttab before (stuff)',
+                            preserve_multiple_spaces=True) == \
+        r'&nbsp;&nbsp;&nbsp; tab before \(stuff\)'
 
-    dd.assert_equal(
-        h.plain2markdown('\ttab before (stuff)',
-                         preserve_multiple_spaces=False),
-        r'tab before \(stuff\)')
+    assert h.plain2markdown('\ttab before (stuff)',
+                            preserve_multiple_spaces=False) == \
+        r'tab before \(stuff\)'
 
 
 @with_nose_compatibility
diff --git a/Allura/allura/tests/test_middlewares.py b/Allura/allura/tests/test_middlewares.py
index b48e276..2435ba8 100644
--- a/Allura/allura/tests/test_middlewares.py
+++ b/Allura/allura/tests/test_middlewares.py
@@ -16,8 +16,6 @@
 #       under the License.
 
 from mock import MagicMock, patch
-from datadiff.tools import assert_equal
-from alluratest.tools import assert_not_equal
 from allura.lib.custom_middleware import CORSMiddleware
 from alluratest.pytest_helpers import with_nose_compatibility
 
diff --git a/Allura/allura/tests/test_tasks.py b/Allura/allura/tests/test_tasks.py
index 2aeef65..80fffbb 100644
--- a/Allura/allura/tests/test_tasks.py
+++ b/Allura/allura/tests/test_tasks.py
@@ -17,7 +17,6 @@
 
 import operator
 import shutil
-import sys
 from textwrap import dedent
 import unittest
 
@@ -30,8 +29,6 @@
 import mock
 from tg import tmpl_context as c, app_globals as g
 
-from datadiff.tools import assert_equal
-from nose.tools import assert_in, assert_less, assert_less_equal
 from ming.orm import FieldProperty, Mapper
 from ming.orm import ThreadLocalORMSession
 from testfixtures import LogCapture
@@ -41,8 +38,6 @@
 from allura import model as M
 from allura.command.taskd import TaskdCommand
 from allura.lib import helpers as h
-from allura.lib import search
-from allura.lib.exceptions import CompoundError
 from allura.lib.mail_util import MAX_MAIL_LINE_OCTETS
 from allura.tasks import event_tasks
 from allura.tasks import index_tasks
diff --git a/Allura/allura/tests/test_webhooks.py b/Allura/allura/tests/test_webhooks.py
index b2958d7..4494d9a 100644
--- a/Allura/allura/tests/test_webhooks.py
+++ b/Allura/allura/tests/test_webhooks.py
@@ -22,7 +22,6 @@
 
 from mock import Mock, MagicMock, patch, call
 import pytest
-from datadiff import tools as dd
 from formencode import Invalid
 from ming.odm import session
 from tg import tmpl_context as c
@@ -669,7 +668,7 @@
             'hook_url': 'http://httpbin.org/post',
             'mod_date': self.wh.mod_date,
         }
-        dd.assert_equal(self.wh.__json__(), expected)
+        assert self.wh.__json__() == expected
 
 
 @with_nose_compatibility
@@ -727,7 +726,7 @@
             'webhooks': webhooks,
             'limits': {'repo-push': {'max': 3, 'used': 3}},
         }
-        dd.assert_equal(r.json, expected)
+        assert r.json == expected
 
     def test_webhook_GET_404(self):
         r = self.api_get(self.url + '/repo-push/invalid', status=404)
@@ -743,8 +742,8 @@
             'hook_url': 'http://httpbin.org/post/0',
             'mod_date': str(webhook.mod_date),
         }
-        dd.assert_equal(r.status_int, 200)
-        dd.assert_equal(r.json, expected)
+        assert r.status_int == 200
+        assert r.json == expected
 
     def test_create_validation(self):
         assert M.Webhook.query.find().count() == len(self.webhooks)
@@ -787,7 +786,7 @@
             'hook_url': data['url'],
             'mod_date': str(webhook.mod_date),
         }
-        dd.assert_equal(r.json, expected)
+        assert r.json == expected
         assert M.Webhook.query.find().count() == len(self.webhooks) + 1
 
     def test_create_duplicates(self):
@@ -847,7 +846,7 @@
             'hook_url': data['url'],
             'mod_date': str(webhook.mod_date),
         }
-        dd.assert_equal(r.json, expected)
+        assert r.json == expected
 
         # change only secret
         data = {'secret': 'new-secret'}
@@ -867,7 +866,7 @@
             'hook_url': 'http://hook.slack.com/abcd',
             'mod_date': str(webhook.mod_date),
         }
-        dd.assert_equal(r.json, expected)
+        assert r.json == expected
 
     def test_edit_duplicates(self):
         webhook = self.webhooks[0]
@@ -891,7 +890,7 @@
             webhook.hook_url, self.git.config.url())
         with td.audits(msg):
             r = self.api_delete(url, status=200)
-        dd.assert_equal(r.json, {'result': 'ok'})
+        assert r.json == {'result': 'ok'}
         assert M.Webhook.query.find().count() == 2
         assert M.Webhook.query.get(_id=webhook._id) == None
 
diff --git a/Allura/allura/tests/unit/controllers/test_discussion_moderation_controller.py b/Allura/allura/tests/unit/controllers/test_discussion_moderation_controller.py
index 3ad4ed8..133301f 100644
--- a/Allura/allura/tests/unit/controllers/test_discussion_moderation_controller.py
+++ b/Allura/allura/tests/unit/controllers/test_discussion_moderation_controller.py
@@ -15,7 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from alluratest.tools import assert_equal
 from mock import Mock, patch
 from ming.orm import ThreadLocalORMSession, session
 
diff --git a/Allura/allura/tests/unit/phone/test_nexmo.py b/Allura/allura/tests/unit/phone/test_nexmo.py
index 2902739..1b6139f 100644
--- a/Allura/allura/tests/unit/phone/test_nexmo.py
+++ b/Allura/allura/tests/unit/phone/test_nexmo.py
@@ -17,8 +17,6 @@
 
 import json
 from mock import patch
-from datadiff.tools import assert_equal
-from alluratest.tools import assert_in, assert_not_in
 from alluratest.pytest_helpers import with_nose_compatibility
 
 from allura.lib.phone.nexmo import NexmoPhoneService
diff --git a/Allura/allura/tests/unit/phone/test_phone_service.py b/Allura/allura/tests/unit/phone/test_phone_service.py
index e4af199..7395944 100644
--- a/Allura/allura/tests/unit/phone/test_phone_service.py
+++ b/Allura/allura/tests/unit/phone/test_phone_service.py
@@ -15,9 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from alluratest.tools import assert_true
-from datadiff.tools import assert_equal
-
 from allura.lib.phone import PhoneService
 from alluratest.pytest_helpers import with_nose_compatibility
 
diff --git a/Allura/allura/tests/unit/spam/test_spam_filter.py b/Allura/allura/tests/unit/spam/test_spam_filter.py
index f907b41..93b01b9 100644
--- a/Allura/allura/tests/unit/spam/test_spam_filter.py
+++ b/Allura/allura/tests/unit/spam/test_spam_filter.py
@@ -19,7 +19,6 @@
 import unittest
 
 from ming.odm import ThreadLocalORMSession
-from alluratest.tools import assert_equal
 
 from allura.lib.spam import SpamFilter, ChainedSpamFilter
 from allura import model as M
diff --git a/Allura/allura/tests/unit/spam/test_stopforumspam.py b/Allura/allura/tests/unit/spam/test_stopforumspam.py
index 7a1bd31..296f63a 100644
--- a/Allura/allura/tests/unit/spam/test_stopforumspam.py
+++ b/Allura/allura/tests/unit/spam/test_stopforumspam.py
@@ -19,7 +19,6 @@
 import mock
 
 from bson import ObjectId
-from alluratest.tools import assert_equal
 
 from allura.lib.spam.stopforumspamfilter import StopForumSpamSpamFilter
 from alluratest.pytest_helpers import with_nose_compatibility
diff --git a/Allura/allura/tests/unit/test_helpers/test_ago.py b/Allura/allura/tests/unit/test_helpers/test_ago.py
index a8e4c90..ee4d092 100644
--- a/Allura/allura/tests/unit/test_helpers/test_ago.py
+++ b/Allura/allura/tests/unit/test_helpers/test_ago.py
@@ -18,7 +18,6 @@
 from datetime import datetime
 
 from mock import patch
-from alluratest.tools import assert_equal
 
 from allura.lib import helpers
 from alluratest.pytest_helpers import with_nose_compatibility
diff --git a/Allura/allura/tests/unit/test_ldap_auth_provider.py b/Allura/allura/tests/unit/test_ldap_auth_provider.py
index bc17ce9..c66da2b 100644
--- a/Allura/allura/tests/unit/test_ldap_auth_provider.py
+++ b/Allura/allura/tests/unit/test_ldap_auth_provider.py
@@ -17,11 +17,10 @@
 
 import calendar
 import platform
-from datetime import datetime, timedelta
+from datetime import datetime
 
 from bson import ObjectId
 from mock import patch, Mock
-from alluratest.tools import assert_equal, assert_not_equal, assert_true
 from unittest import SkipTest
 from webob import Request
 from ming.orm.ormsession import ThreadLocalORMSession
diff --git a/Allura/allura/tests/unit/test_repo.py b/Allura/allura/tests/unit/test_repo.py
index a33d8c6..f67e69a 100644
--- a/Allura/allura/tests/unit/test_repo.py
+++ b/Allura/allura/tests/unit/test_repo.py
@@ -20,8 +20,6 @@
 
 import six
 from mock import patch, Mock, MagicMock, call
-from alluratest.tools import assert_equal
-from datadiff import tools as dd
 
 from tg import tmpl_context as c
 
@@ -320,8 +318,8 @@
 
     def test_no_branches(self):
         b, t = _group_commits(self.repo, ['3', '2', '1'])
-        dd.assert_equal(b, {'__default__': ['3', '2', '1']})
-        dd.assert_equal(t, {})
+        assert b == {'__default__': ['3', '2', '1']}
+        assert t == {}
 
     def test_branches_and_tags(self):
         self.repo.symbolics_for_commit.side_effect = [
@@ -330,8 +328,8 @@
             ([], []),
         ]
         b, t = _group_commits(self.repo, ['3', '2', '1'])
-        dd.assert_equal(b, {'master': ['3', '2', '1']})
-        dd.assert_equal(t, {'v1.1': ['3', '2', '1']})
+        assert b == {'master': ['3', '2', '1']}
+        assert t == {'v1.1': ['3', '2', '1']}
 
     def test_multiple_branches(self):
         self.repo.symbolics_for_commit.side_effect = [
@@ -340,8 +338,8 @@
             (['test1', 'test2'], []),
         ]
         b, t = _group_commits(self.repo, ['3', '2', '1'])
-        dd.assert_equal(b, {'master': ['3', '2'],
-                            'test1': ['1'],
-                            'test2': ['1']})
-        dd.assert_equal(t, {'v1.1': ['3'],
-                            'v1.0': ['2', '1']})
+        assert b == {'master': ['3', '2'],
+                     'test1': ['1'],
+                     'test2': ['1']}
+        assert t == {'v1.1': ['3'],
+                     'v1.0': ['2', '1']}
diff --git a/Allura/allura/tests/unit/test_solr.py b/Allura/allura/tests/unit/test_solr.py
index fa23bc1..8d15e65 100644
--- a/Allura/allura/tests/unit/test_solr.py
+++ b/Allura/allura/tests/unit/test_solr.py
@@ -18,7 +18,6 @@
 import unittest
 
 import mock
-from datadiff.tools import assert_equal
 from markupsafe import Markup
 
 from allura.lib import helpers as h
diff --git a/ForgeActivity/forgeactivity/tests/functional/test_rest.py b/ForgeActivity/forgeactivity/tests/functional/test_rest.py
index 5ee7b6b..39db63a 100644
--- a/ForgeActivity/forgeactivity/tests/functional/test_rest.py
+++ b/ForgeActivity/forgeactivity/tests/functional/test_rest.py
@@ -15,8 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from datadiff.tools import assert_equal
-
 from tg import config
 from alluratest.controller import TestRestApiBase
 
diff --git a/ForgeActivity/forgeactivity/tests/functional/test_root.py b/ForgeActivity/forgeactivity/tests/functional/test_root.py
index 565576e..5860ac7 100644
--- a/ForgeActivity/forgeactivity/tests/functional/test_root.py
+++ b/ForgeActivity/forgeactivity/tests/functional/test_root.py
@@ -21,7 +21,6 @@
 from tg import config
 from bson import ObjectId
 import dateutil.parser
-from alluratest.tools import assert_equal
 from tg import app_globals as g
 from activitystream.storage.mingstorage import Activity
 from ming.odm import ThreadLocalODMSession
diff --git a/ForgeBlog/forgeblog/tests/functional/test_feeds.py b/ForgeBlog/forgeblog/tests/functional/test_feeds.py
index 530f8bd..dd68b0e 100644
--- a/ForgeBlog/forgeblog/tests/functional/test_feeds.py
+++ b/ForgeBlog/forgeblog/tests/functional/test_feeds.py
@@ -18,7 +18,6 @@
 
 import datetime
 
-from alluratest.tools import assert_in, assert_not_in
 from ming.orm.ormsession import ThreadLocalORMSession
 from tg import tmpl_context as c
 
diff --git a/ForgeBlog/forgeblog/tests/functional/test_rest.py b/ForgeBlog/forgeblog/tests/functional/test_rest.py
index 068a5e9..59c06d5 100644
--- a/ForgeBlog/forgeblog/tests/functional/test_rest.py
+++ b/ForgeBlog/forgeblog/tests/functional/test_rest.py
@@ -17,7 +17,6 @@
 from datetime import date
 
 import tg
-from alluratest.tools import assert_equal, assert_in
 
 from allura.lib import helpers as h
 from allura.tests import decorators as td
diff --git a/ForgeBlog/forgeblog/tests/functional/test_root.py b/ForgeBlog/forgeblog/tests/functional/test_root.py
index c0b18e4..7e8bc73 100644
--- a/ForgeBlog/forgeblog/tests/functional/test_root.py
+++ b/ForgeBlog/forgeblog/tests/functional/test_root.py
@@ -19,7 +19,6 @@
 import json
 
 import tg
-from alluratest.tools import assert_equal, assert_in
 from mock import patch
 
 from allura.lib import helpers as h
diff --git a/ForgeBlog/forgeblog/tests/test_app.py b/ForgeBlog/forgeblog/tests/test_app.py
index c61b0a0..86ecba4 100644
--- a/ForgeBlog/forgeblog/tests/test_app.py
+++ b/ForgeBlog/forgeblog/tests/test_app.py
@@ -21,7 +21,6 @@
 from cgi import FieldStorage
 from io import BytesIO
 
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 from ming.orm import ThreadLocalORMSession
 
diff --git a/ForgeBlog/forgeblog/tests/test_commands.py b/ForgeBlog/forgeblog/tests/test_commands.py
index 3b82d68..1728dbf 100644
--- a/ForgeBlog/forgeblog/tests/test_commands.py
+++ b/ForgeBlog/forgeblog/tests/test_commands.py
@@ -16,8 +16,6 @@
 #       under the License.
 
 from datetime import datetime, timedelta
-from tg import app_globals as g
-from datadiff.tools import assert_equal
 from unittest import skipIf
 import pkg_resources
 import mock
diff --git a/ForgeBlog/forgeblog/tests/unit/test_blog_post.py b/ForgeBlog/forgeblog/tests/unit/test_blog_post.py
index 56c5e29..19559ff 100644
--- a/ForgeBlog/forgeblog/tests/unit/test_blog_post.py
+++ b/ForgeBlog/forgeblog/tests/unit/test_blog_post.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 from datetime import datetime
-from alluratest.tools import assert_equal, assert_true
 from tg import tmpl_context as c
 
 from forgeblog import model as M
diff --git a/ForgeChat/forgechat/tests/functional/test_root.py b/ForgeChat/forgechat/tests/functional/test_root.py
index 024e3a4..5e7e739 100644
--- a/ForgeChat/forgechat/tests/functional/test_root.py
+++ b/ForgeChat/forgechat/tests/functional/test_root.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import json
-from datadiff.tools import assert_equal
 
 from alluratest.controller import TestController
 from allura.tests.decorators import with_tool
diff --git a/ForgeDiscussion/forgediscussion/tests/functional/test_import.py b/ForgeDiscussion/forgediscussion/tests/functional/test_import.py
index 1219d2a..bf4cf6d 100644
--- a/ForgeDiscussion/forgediscussion/tests/functional/test_import.py
+++ b/ForgeDiscussion/forgediscussion/tests/functional/test_import.py
@@ -17,14 +17,9 @@
 
 import os
 import json
-from datetime import datetime, timedelta
-from alluratest.tools import assert_equal
 
-import ming
 from tg import config
-from tg import tmpl_context as c
 
-from allura import model as M
 from allura.lib import helpers as h
 from alluratest.controller import TestRestApiBase
 
diff --git a/ForgeDiscussion/forgediscussion/tests/test_app.py b/ForgeDiscussion/forgediscussion/tests/test_app.py
index 0bf49ae..434e4d2 100644
--- a/ForgeDiscussion/forgediscussion/tests/test_app.py
+++ b/ForgeDiscussion/forgediscussion/tests/test_app.py
@@ -23,7 +23,6 @@
 from io import BytesIO
 from alluratest.controller import setup_basic_test, setup_unit_test
 
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 
 from forgediscussion.site_stats import posts_24hr
diff --git a/ForgeFeedback/forgefeedback/tests/test_feedback_roles.py b/ForgeFeedback/forgefeedback/tests/test_feedback_roles.py
index 64b6262..33faa82 100644
--- a/ForgeFeedback/forgefeedback/tests/test_feedback_roles.py
+++ b/ForgeFeedback/forgefeedback/tests/test_feedback_roles.py
@@ -17,8 +17,6 @@
 
 from tg import tmpl_context as c, app_globals as g
 
-from alluratest.tools import assert_equal
-
 from alluratest.controller import setup_basic_test, setup_global_objects
 from allura import model as M
 from allura.lib import security
@@ -26,7 +24,7 @@
 from allura.lib import helpers as h
 
 
-def setup_module(module):
+def setup_module():
     setup_basic_test()
     setup_with_tools()
 
diff --git a/ForgeFeedback/forgefeedback/tests/unit/test_feedback.py b/ForgeFeedback/forgefeedback/tests/unit/test_feedback.py
index a5863d3..dd885df 100644
--- a/ForgeFeedback/forgefeedback/tests/unit/test_feedback.py
+++ b/ForgeFeedback/forgefeedback/tests/unit/test_feedback.py
@@ -15,10 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from datetime import datetime
-from alluratest.tools import assert_equal, assert_true
-from tg import tmpl_context as c
-
 from forgefeedback.tests.unit import FeedbackTestWithModel
 from forgefeedback import model as M
 
diff --git a/ForgeFeedback/forgefeedback/tests/unit/test_root_controller.py b/ForgeFeedback/forgefeedback/tests/unit/test_root_controller.py
index f6b2b0c..bd86be4 100644
--- a/ForgeFeedback/forgefeedback/tests/unit/test_root_controller.py
+++ b/ForgeFeedback/forgefeedback/tests/unit/test_root_controller.py
@@ -15,13 +15,8 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-import unittest
-
-from mock import Mock, patch
 from ming.orm.ormsession import session
 from tg import tmpl_context as c
-from tg import request
-from alluratest.tools import assert_equal
 
 from allura.lib import helpers as h
 from allura.model import User
diff --git a/ForgeFiles/forgefiles/tests/functional/test_root.py b/ForgeFiles/forgefiles/tests/functional/test_root.py
index 5c44760..75acf6f 100644
--- a/ForgeFiles/forgefiles/tests/functional/test_root.py
+++ b/ForgeFiles/forgefiles/tests/functional/test_root.py
@@ -15,7 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 from tg import tmpl_context as c
-from nose.tools import assert_true,assert_not_equal,assert_equals
 
 from allura import model as M
 from alluratest.controller import TestController
diff --git a/ForgeFiles/forgefiles/tests/model/test_files.py b/ForgeFiles/forgefiles/tests/model/test_files.py
index 38929e6..d664158 100644
--- a/ForgeFiles/forgefiles/tests/model/test_files.py
+++ b/ForgeFiles/forgefiles/tests/model/test_files.py
@@ -17,8 +17,6 @@
 
 '''This module is added for testing the files model '''
 
-from nose.tools import assert_equal, assert_true, assert_false
-
 from forgefiles.tests.model import FilesTestWithModel
 from forgefiles.model.files import UploadFolder
 from forgefiles.model.files import UploadFiles
diff --git a/ForgeFiles/forgefiles/tests/test_files_roles.py b/ForgeFiles/forgefiles/tests/test_files_roles.py
index 6df1ae7..1bce3c1 100644
--- a/ForgeFiles/forgefiles/tests/test_files_roles.py
+++ b/ForgeFiles/forgefiles/tests/test_files_roles.py
@@ -15,7 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from nose.tools import assert_equal
 from tg import tmpl_context as c, app_globals as g
 
 from alluratest.controller import setup_basic_test, setup_global_objects
diff --git a/ForgeGit/forgegit/tests/functional/test_auth.py b/ForgeGit/forgegit/tests/functional/test_auth.py
index d0bacfa..80955e0 100644
--- a/ForgeGit/forgegit/tests/functional/test_auth.py
+++ b/ForgeGit/forgegit/tests/functional/test_auth.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import json
-from datadiff.tools import assert_equal
 
 from allura.tests import TestController
 from allura.tests.decorators import with_tool
diff --git a/ForgeGit/forgegit/tests/functional/test_controllers.py b/ForgeGit/forgegit/tests/functional/test_controllers.py
index c681d5b..a906bea 100644
--- a/ForgeGit/forgegit/tests/functional/test_controllers.py
+++ b/ForgeGit/forgegit/tests/functional/test_controllers.py
@@ -22,8 +22,6 @@
 import tempfile
 import textwrap
 
-from datadiff.tools import assert_equal as dd_assert_equal
-from alluratest.tools import assert_equal, assert_in, assert_not_in, assert_not_equal
 import pkg_resources
 from alluratest.tools import assert_regexp_matches
 from tg import tmpl_context as c
@@ -892,7 +890,7 @@
         assert '<p>changed description</p' in r
         assert 'Merge Request #1: changed summary (open)' in r
         changes = r.html.findAll('div', attrs={'class': 'markdown_content'})[-1]
-        dd_assert_equal(str(changes), """
+        assert str(changes) == """
 <div class="markdown_content"><ul>
 <li>
 <p><strong>Summary</strong>: summary --&gt; changed summary</p>
@@ -912,7 +910,7 @@
 <span class="gi">+changed description</span><span class="w"></span>
 </code></pre></div>
 </div>
-""".strip())
+""".strip()
 
         r = self.app.get('/p/test/src-git/merge-requests').follow()
         assert '<a href="1/" rel="nofollow">changed summary</a>' in r
diff --git a/ForgeGit/forgegit/tests/model/test_repository.py b/ForgeGit/forgegit/tests/model/test_repository.py
index 7d29d74..8011ef1 100644
--- a/ForgeGit/forgegit/tests/model/test_repository.py
+++ b/ForgeGit/forgegit/tests/model/test_repository.py
@@ -29,9 +29,7 @@
 import tg
 from ming.base import Object
 from ming.orm import ThreadLocalORMSession, session
-from alluratest.tools import assert_equal, assert_in, assert_less
 from testfixtures import TempDirectory
-from datadiff.tools import assert_equals
 
 from alluratest.controller import setup_basic_test, setup_global_objects
 from allura.lib import helpers as h
diff --git a/ForgeGit/forgegit/tests/test_git_app.py b/ForgeGit/forgegit/tests/test_git_app.py
index c486844..59c8601 100644
--- a/ForgeGit/forgegit/tests/test_git_app.py
+++ b/ForgeGit/forgegit/tests/test_git_app.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import unittest
-from alluratest.tools import assert_equals
 
 from tg import tmpl_context as c
 from ming.orm import ThreadLocalORMSession
diff --git a/ForgeImporters/forgeimporters/github/tests/test_utils.py b/ForgeImporters/forgeimporters/github/tests/test_utils.py
index 5f067e8..f8c45cd 100644
--- a/ForgeImporters/forgeimporters/github/tests/test_utils.py
+++ b/ForgeImporters/forgeimporters/github/tests/test_utils.py
@@ -15,8 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from alluratest.tools import assert_equal
-
 from forgeimporters.github.utils import GitHubMarkdownConverter
 
 
diff --git a/ForgeImporters/forgeimporters/github/tests/test_wiki.py b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
index 20f0100..1ddd56d 100644
--- a/ForgeImporters/forgeimporters/github/tests/test_wiki.py
+++ b/ForgeImporters/forgeimporters/github/tests/test_wiki.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 from unittest import TestCase, skipIf
-from alluratest.tools import assert_equal
 from mock import Mock, patch, call
 from ming.odm import ThreadLocalORMSession
 import git
diff --git a/ForgeImporters/forgeimporters/tests/github/functional/test_github.py b/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
index 7945bb2..90f6055 100644
--- a/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
+++ b/ForgeImporters/forgeimporters/tests/github/functional/test_github.py
@@ -17,7 +17,6 @@
 import requests
 import tg
 from mock import patch, call, Mock
-from alluratest.tools import assert_equal
 from unittest import TestCase
 
 from allura.tests import TestController
diff --git a/ForgeImporters/forgeimporters/trac/tests/functional/test_trac.py b/ForgeImporters/forgeimporters/trac/tests/functional/test_trac.py
index f31d5a9..c12823f 100644
--- a/ForgeImporters/forgeimporters/trac/tests/functional/test_trac.py
+++ b/ForgeImporters/forgeimporters/trac/tests/functional/test_trac.py
@@ -15,8 +15,7 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from mock import patch, Mock
-from alluratest.tools import assert_equal
+from mock import patch
 from tg import config
 
 from allura.lib import helpers as h
diff --git a/ForgeLink/forgelink/tests/functional/test_rest.py b/ForgeLink/forgelink/tests/functional/test_rest.py
index 6b3e026..2be4872 100644
--- a/ForgeLink/forgelink/tests/functional/test_rest.py
+++ b/ForgeLink/forgelink/tests/functional/test_rest.py
@@ -15,7 +15,6 @@
 #       specific language governing permissions and limitations
 #       under the License.
 
-from alluratest.tools import assert_equal
 from allura.tests import decorators as td
 from alluratest.controller import TestRestApiBase
 from allura import model as M
diff --git a/ForgeLink/forgelink/tests/functional/test_root.py b/ForgeLink/forgelink/tests/functional/test_root.py
index 595c2aa..ac2d716 100644
--- a/ForgeLink/forgelink/tests/functional/test_root.py
+++ b/ForgeLink/forgelink/tests/functional/test_root.py
@@ -17,8 +17,6 @@
 
 import json
 
-from alluratest.tools import assert_equal, assert_in
-
 from allura import model as M
 from allura.lib import helpers as h
 from allura.tests import decorators as td
diff --git a/ForgeLink/forgelink/tests/test_app.py b/ForgeLink/forgelink/tests/test_app.py
index d6e2fb4..a94901b 100644
--- a/ForgeLink/forgelink/tests/test_app.py
+++ b/ForgeLink/forgelink/tests/test_app.py
@@ -18,7 +18,6 @@
 import tempfile
 import json
 
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 
 from allura.tests import decorators as td
diff --git a/ForgeSVN/forgesvn/tests/functional/test_auth.py b/ForgeSVN/forgesvn/tests/functional/test_auth.py
index 6ae98a7..7a64dc2 100644
--- a/ForgeSVN/forgesvn/tests/functional/test_auth.py
+++ b/ForgeSVN/forgesvn/tests/functional/test_auth.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import json
-from datadiff.tools import assert_equal
 
 from allura.tests import TestController
 from forgesvn.tests import with_svn
diff --git a/ForgeSVN/forgesvn/tests/functional/test_controllers.py b/ForgeSVN/forgesvn/tests/functional/test_controllers.py
index 27b58e0..99cc242 100644
--- a/ForgeSVN/forgesvn/tests/functional/test_controllers.py
+++ b/ForgeSVN/forgesvn/tests/functional/test_controllers.py
@@ -16,18 +16,15 @@
 #       under the License.
 
 import json
-import re
 import shutil
 import os
 from unittest import skipUnless
 
-import six
 import tg
 import pkg_resources
 from tg import tmpl_context as c
 from ming.orm import ThreadLocalORMSession
 from mock import patch
-from alluratest.tools import assert_equal, assert_in
 
 from allura import model as M
 from allura.lib import helpers as h
diff --git a/ForgeSVN/forgesvn/tests/model/test_repository.py b/ForgeSVN/forgesvn/tests/model/test_repository.py
index 885aaaf..707d7b5 100644
--- a/ForgeSVN/forgesvn/tests/model/test_repository.py
+++ b/ForgeSVN/forgesvn/tests/model/test_repository.py
@@ -29,8 +29,6 @@
 
 from tg import tmpl_context as c, app_globals as g
 import mock
-from alluratest.tools import assert_equal, assert_in
-from datadiff.tools import assert_equals
 import tg
 import ming
 from ming.base import Object
@@ -48,7 +46,6 @@
 from forgesvn.model.svn import svn_path_exists
 from forgesvn.tests import with_svn
 from allura.tests.decorators import with_tool
-import six
 
 
 class TestNewRepo(unittest.TestCase):
diff --git a/ForgeSVN/forgesvn/tests/model/test_svnimplementation.py b/ForgeSVN/forgesvn/tests/model/test_svnimplementation.py
index 0313e82..bb60f13 100644
--- a/ForgeSVN/forgesvn/tests/model/test_svnimplementation.py
+++ b/ForgeSVN/forgesvn/tests/model/test_svnimplementation.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 from mock import Mock, patch
-from alluratest.tools import assert_equal
 from tg import app_globals as g
 
 from alluratest.controller import setup_unit_test
diff --git a/ForgeSVN/forgesvn/tests/test_svn_app.py b/ForgeSVN/forgesvn/tests/test_svn_app.py
index d5c8770..80d3357 100644
--- a/ForgeSVN/forgesvn/tests/test_svn_app.py
+++ b/ForgeSVN/forgesvn/tests/test_svn_app.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import unittest
-from alluratest.tools import assert_equals
 
 from tg import tmpl_context as c
 from ming.orm import ThreadLocalORMSession
diff --git a/ForgeSVN/forgesvn/tests/test_tasks.py b/ForgeSVN/forgesvn/tests/test_tasks.py
index b3e388e..b4d939e 100644
--- a/ForgeSVN/forgesvn/tests/test_tasks.py
+++ b/ForgeSVN/forgesvn/tests/test_tasks.py
@@ -23,7 +23,6 @@
 import mock
 from tg import tmpl_context as c
 from paste.deploy.converters import asbool
-from alluratest.tools import assert_equal
 
 from alluratest.controller import setup_basic_test
 
diff --git a/ForgeShortUrl/forgeshorturl/tests/functional/test_main.py b/ForgeShortUrl/forgeshorturl/tests/functional/test_main.py
index 1d3471d..4aa1938 100644
--- a/ForgeShortUrl/forgeshorturl/tests/functional/test_main.py
+++ b/ForgeShortUrl/forgeshorturl/tests/functional/test_main.py
@@ -17,7 +17,6 @@
 
 from tg import tmpl_context as c
 from tg import config
-from alluratest.tools import assert_equal
 import mock
 
 from allura.lib import helpers as h
diff --git a/ForgeTracker/forgetracker/tests/command/test_fix_discussion.py b/ForgeTracker/forgetracker/tests/command/test_fix_discussion.py
index 1f3479d..5d51ad1 100644
--- a/ForgeTracker/forgetracker/tests/command/test_fix_discussion.py
+++ b/ForgeTracker/forgetracker/tests/command/test_fix_discussion.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 from ming.orm import session
-from alluratest.tools import assert_equal, assert_not_equal
 import pkg_resources
 
 from alluratest.controller import setup_basic_test, setup_global_objects
diff --git a/ForgeTracker/forgetracker/tests/functional/test_rest.py b/ForgeTracker/forgetracker/tests/functional/test_rest.py
index 7db63df..6dfa4c9 100644
--- a/ForgeTracker/forgetracker/tests/functional/test_rest.py
+++ b/ForgeTracker/forgetracker/tests/functional/test_rest.py
@@ -17,8 +17,6 @@
 
 from tg import tmpl_context as c
 
-from datadiff.tools import assert_equal
-from alluratest.tools import assert_not_equal
 from mock import patch
 from tg import config
 
diff --git a/ForgeTracker/forgetracker/tests/test_app.py b/ForgeTracker/forgetracker/tests/test_app.py
index a688e8d..f5542b6 100644
--- a/ForgeTracker/forgetracker/tests/test_app.py
+++ b/ForgeTracker/forgetracker/tests/test_app.py
@@ -21,7 +21,6 @@
 import os
 from io import BytesIO
 
-from alluratest.tools import assert_equal, assert_true
 from tg import tmpl_context as c
 from cgi import FieldStorage
 
@@ -33,7 +32,6 @@
 from forgetracker import model as TM
 from forgetracker.site_stats import tickets_stats_24hr
 from forgetracker.tests.functional.test_root import TrackerTestController
-from alluratest.pytest_helpers import with_nose_compatibility
 
 
 class TestApp:
diff --git a/ForgeTracker/forgetracker/tests/unit/test_globals_model.py b/ForgeTracker/forgetracker/tests/unit/test_globals_model.py
index bb22df4..2e7c591 100644
--- a/ForgeTracker/forgetracker/tests/unit/test_globals_model.py
+++ b/ForgeTracker/forgetracker/tests/unit/test_globals_model.py
@@ -18,7 +18,6 @@
 from datetime import datetime, timedelta
 
 import mock
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 from ming.orm.ormsession import ThreadLocalORMSession
 
diff --git a/ForgeTracker/forgetracker/tests/unit/test_milestone_controller.py b/ForgeTracker/forgetracker/tests/unit/test_milestone_controller.py
index 3bc0edd..9634eb6 100644
--- a/ForgeTracker/forgetracker/tests/unit/test_milestone_controller.py
+++ b/ForgeTracker/forgetracker/tests/unit/test_milestone_controller.py
@@ -17,7 +17,6 @@
 
 
 from mock import Mock
-from alluratest.tools import assert_equal
 
 from allura.lib import helpers as h
 from tg import tmpl_context as c
diff --git a/ForgeTracker/forgetracker/tests/unit/test_root_controller.py b/ForgeTracker/forgetracker/tests/unit/test_root_controller.py
index fd40593..ac01573 100644
--- a/ForgeTracker/forgetracker/tests/unit/test_root_controller.py
+++ b/ForgeTracker/forgetracker/tests/unit/test_root_controller.py
@@ -20,7 +20,6 @@
 from mock import Mock, patch
 from ming.orm.ormsession import session
 from tg import tmpl_context as c
-from alluratest.tools import assert_equal
 
 from allura.lib import helpers as h
 from allura.model import User
diff --git a/ForgeTracker/forgetracker/tests/unit/test_search.py b/ForgeTracker/forgetracker/tests/unit/test_search.py
index c9bb4bd..4c3548b 100644
--- a/ForgeTracker/forgetracker/tests/unit/test_search.py
+++ b/ForgeTracker/forgetracker/tests/unit/test_search.py
@@ -16,7 +16,6 @@
 #       under the License.
 
 import mock
-from alluratest.tools import assert_equal
 from forgetracker.search import get_facets, query_filter_choices
 
 
diff --git a/ForgeWiki/forgewiki/tests/functional/test_rest.py b/ForgeWiki/forgewiki/tests/functional/test_rest.py
index 4eb87d9..0703f7e 100644
--- a/ForgeWiki/forgewiki/tests/functional/test_rest.py
+++ b/ForgeWiki/forgewiki/tests/functional/test_rest.py
@@ -17,7 +17,6 @@
 
 import json
 
-from alluratest.tools import assert_equal, assert_in, assert_not_equal
 import tg
 
 from allura.lib import helpers as h
diff --git a/ForgeWiki/forgewiki/tests/functional/test_root.py b/ForgeWiki/forgewiki/tests/functional/test_root.py
index 927f17d..8a5e5ee 100644
--- a/ForgeWiki/forgewiki/tests/functional/test_root.py
+++ b/ForgeWiki/forgewiki/tests/functional/test_root.py
@@ -21,7 +21,6 @@
 import json
 
 import PIL
-from alluratest.tools import assert_true, assert_equal, assert_in, assert_not_equal, assert_not_in
 from ming.orm.ormsession import ThreadLocalORMSession
 from mock import patch
 from tg import config
diff --git a/ForgeWiki/forgewiki/tests/test_app.py b/ForgeWiki/forgewiki/tests/test_app.py
index 482288d..ca01c82 100644
--- a/ForgeWiki/forgewiki/tests/test_app.py
+++ b/ForgeWiki/forgewiki/tests/test_app.py
@@ -22,7 +22,6 @@
 import os
 from io import BytesIO
 
-from alluratest.tools import assert_equal
 from tg import tmpl_context as c
 from ming.orm import ThreadLocalORMSession
 
diff --git a/ForgeWiki/forgewiki/tests/test_wiki_roles.py b/ForgeWiki/forgewiki/tests/test_wiki_roles.py
index f42f766..56a964d 100644
--- a/ForgeWiki/forgewiki/tests/test_wiki_roles.py
+++ b/ForgeWiki/forgewiki/tests/test_wiki_roles.py
@@ -17,8 +17,6 @@
 
 from tg import tmpl_context as c, app_globals as g
 
-from alluratest.tools import assert_equal
-
 from alluratest.controller import setup_basic_test, setup_global_objects
 from allura import model as M
 from allura.lib import security
diff --git a/requirements.in b/requirements.in
index 57c4c53..0226b62 100644
--- a/requirements.in
+++ b/requirements.in
@@ -49,7 +49,6 @@
 wrapt
 importlib-metadata<5.0
 # testing
-datadiff
 mock
 pyflakes
 #pylint -- disabled due to [#8346]  (also requires diff versions on py2 vs 3, including transitive deps which gets tricky with pip-compile)
