Skip to content
This repository was archived by the owner on Jun 11, 2018. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ verbose=2
[bdist_wheel]
universal=0

[pytest]
[tool:pytest]
python_files=tests.py test_*.py *_tests.py
testpaths = tests
isort_ignore=
opbeat/transport/asyncio.py
opbeat/contrib/asyncio/client.py
Expand Down
3 changes: 1 addition & 2 deletions tests/asyncio/test_asyncio_http.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
pytestmark = pytest.mark.skipif(sys.version_info < (3, 5),
reason='python3.5+ requried for asyncio')


@pytest.fixture
def mock_client(mocker):
mock_client = mocker.MagicMock()
Expand All @@ -18,7 +19,6 @@ async def read():

response.read = read


class fake_post:
async def __aenter__(self, *args, **kwargs):
response.status = mock_client.status
Expand All @@ -34,7 +34,6 @@ def __init__(self, *args, **kwargs):
mock_client.args = args
mock_client.kwargs = kwargs


mock_client.post = mocker.Mock(side_effect=fake_post)
return mock_client

Expand Down
5 changes: 2 additions & 3 deletions tests/client/client_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,6 @@ def test_send_remote_failover_async(self, should_try, http_send):
@mock.patch('opbeat.base.time.time')
def test_send(self, time, send_remote):
time.return_value = 1328055286.51
public = "public"
access_token = "secret"
client = Client(
servers=['http://example.com'],
Expand Down Expand Up @@ -451,7 +450,7 @@ def test_long_message(self):
def test_long_culprit(self):
culprit = 'c' * 101

self.client.capture('Message', message='test', data={'culprit':culprit})
self.client.capture('Message', message='test', data={'culprit': culprit})

self.assertEquals(len(self.client.events), 1)
event = self.client.events.pop(0)
Expand All @@ -460,7 +459,7 @@ def test_long_culprit(self):
def test_long_logger(self):
logger = 'c' * 61

self.client.capture('Message', message='test', data={'logger':logger})
self.client.capture('Message', message='test', data={'logger': logger})

self.assertEquals(len(self.client.events), 1)
event = self.client.events.pop(0)
Expand Down
17 changes: 8 additions & 9 deletions tests/contrib/django/django_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ def test_basic(self):

self.assertEquals(event['message'], 'foo')
self.assertEquals(event['level'], 'error')
self.assertEquals(event['param_message'], {'message':'foo','params':()})
self.assertEquals(event['param_message'], {'message': 'foo', 'params': ()})
self.assertEquals(type(event['timestamp']), datetime.datetime)

def test_signal_integration(self):
Expand Down Expand Up @@ -394,7 +394,7 @@ def test_record_none_exc_info(self):
self.assertEquals(len(self.opbeat.events), 1)
event = self.opbeat.events.pop(0)

self.assertEquals(event['param_message'], {'message': 'test','params':()})
self.assertEquals(event['param_message'], {'message': 'test', 'params': ()})

def test_404_middleware(self):
with self.settings(MIDDLEWARE_CLASSES=['opbeat.contrib.django.middleware.Opbeat404CatchMiddleware']):
Expand Down Expand Up @@ -790,7 +790,7 @@ def test_request_metrics_contrib_redirect(self):
'django.contrib.redirects.middleware.RedirectFallbackMiddleware',
],
):
response = self.client.get('/redirect/me/')
self.client.get('/redirect/me/')

timed_requests, _traces = self.opbeat.instrumentation_store.get_all()
timing = timed_requests[0]
Expand Down Expand Up @@ -821,7 +821,7 @@ def test_request_metrics_contrib_redirect_new_style_middleware(self):
'django.contrib.redirects.middleware.RedirectFallbackMiddleware',
],
):
response = self.client.get('/redirect/me/')
self.client.get('/redirect/me/')

timed_requests, _traces = self.opbeat.instrumentation_store.get_all()
timing = timed_requests[0]
Expand Down Expand Up @@ -1095,7 +1095,7 @@ def test_stacktrace_filtered_for_opbeat():
"opbeat.traces.RequestsStore.should_collect") as should_collect:
should_collect.return_value = False
with override_settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
resp = client.get(reverse("render-heavy-template"))
assert resp.status_code == 200

Expand All @@ -1122,7 +1122,7 @@ def test_perf_template_render(benchmark):
with mock.patch("opbeat.traces.RequestsStore.should_collect") as should_collect:
should_collect.return_value = False
with override_settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
resp = benchmark(client_get, client, reverse("render-heavy-template"))
assert resp.status_code == 200

Expand Down Expand Up @@ -1162,7 +1162,7 @@ def test_perf_database_render(benchmark):
should_collect.return_value = False

with override_settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
resp = benchmark(client_get, client, reverse("render-user-template"))
assert resp.status_code == 200

Expand Down Expand Up @@ -1202,8 +1202,7 @@ def test_perf_transaction_with_collection(benchmark):
client = _TestClient()

with override_settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):

'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
for i in range(10):
resp = client_get(client, reverse("render-user-template"))
assert resp.status_code == 200
Expand Down
2 changes: 1 addition & 1 deletion tests/contrib/django/testapp/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

from __future__ import absolute_import

from .celery import app as celery_app
from .celery import app as celery_app # noqa
2 changes: 1 addition & 1 deletion tests/contrib/django/testapp/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,4 @@ def handler500(request):

if django.VERSION >= (1, 8):
urlpatterns += url(r'^render-jinja2-template$', views.render_jinja2_template,
name='render-jinja2-template'),
name='render-jinja2-template'),
4 changes: 2 additions & 2 deletions tests/contrib/django/testapp/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ def something_expensive():
with trace("something_expensive", "code"):
return [User(username='Ron'), User(username='Beni')]

return render(request, "list_users.html",
{'users': something_expensive})
return render(request, "list_users.html", {
'users': something_expensive})


def render_jinja2_template(request):
Expand Down
2 changes: 1 addition & 1 deletion tests/contrib/pylons/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ def test_init(self):
'opbeat.app_id': 'p' * 32,
'opbeat.secret_token': 'a' * 32,
}
middleware = Opbeat(self.app, config)
Opbeat(self.app, config)
10 changes: 4 additions & 6 deletions tests/contrib/zerorpc/zeropc_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,20 @@
zerorpc = pytest.importorskip("zerorpc")
gevent = pytest.importorskip("gevent")



has_unsupported_pypy = (hasattr(sys, 'pypy_version_info')
and sys.pypy_version_info < (2, 6))
has_unsupported_pypy = (hasattr(sys, 'pypy_version_info') and
sys.pypy_version_info < (2, 6))


class ZeroRPCTest(TestCase):
def setUp(self):
self._socket_dir = tempfile.mkdtemp(prefix='opbeatzerorpcunittest')
self._server_endpoint = 'ipc://{0}'.format(os.path.join(
self._socket_dir, 'random_zeroserver'
self._socket_dir, 'random_zeroserver'
))

self._opbeat = get_tempstoreclient()
zerorpc.Context.get_instance().register_middleware(OpbeatMiddleware(
client=self._opbeat
client=self._opbeat
))

@pytest.mark.skipif(has_unsupported_pypy, reason='Failure with pypy < 2.6')
Expand Down
5 changes: 2 additions & 3 deletions tests/instrumentation/django_tests/template_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ def setUp(self):
def test_template_rendering(self, should_collect):
should_collect.return_value = False
with self.settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware']):
self.client.get(reverse('render-heavy-template'))
self.client.get(reverse('render-heavy-template'))
self.client.get(reverse('render-heavy-template'))
Expand Down Expand Up @@ -84,8 +84,7 @@ def test_template_rendering_django18_jinja2(self, should_collect):
should_collect.return_value = False
with self.settings(MIDDLEWARE_CLASSES=[
'opbeat.contrib.django.middleware.OpbeatAPMMiddleware'],
TEMPLATES=TEMPLATES
):
TEMPLATES=TEMPLATES):
self.client.get(reverse('render-jinja2-template'))
self.client.get(reverse('render-jinja2-template'))
self.client.get(reverse('render-jinja2-template'))
Expand Down
1 change: 1 addition & 0 deletions tests/instrumentation/psycopg2_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,7 @@ def test_multi_statement_sql():

assert "CREATE TABLE" == actual


@pytest.mark.skipif(travis_and_psycopg2,
reason="Requires postgres server. Only runs on travisci.")
def test_psycopg2_register_type(postgres_connection):
Expand Down
8 changes: 4 additions & 4 deletions tests/instrumentation/pymongo_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,10 +135,10 @@ def test_collection_find(self):
for i in range(1000):
blogposts.append({'author': 'Tom', 'comments': i})
self.db.blogposts.insert(blogposts)
r = self.db.blogposts.insert(blogpost)
self.db.blogposts.insert(blogpost)
self.client.instrumentation_store.get_all()
self.client.begin_transaction('transaction.test')
r = list(self.db.blogposts.find({'comments': {'$gt': 995}}))
self.db.blogposts.find({'comments': {'$gt': 995}})

self.client.end_transaction('transaction.test')
transactions, traces = self.client.instrumentation_store.get_all()
Expand Down Expand Up @@ -198,7 +198,7 @@ def test_collection_update_one(self):
r = self.db.blogposts.insert(blogpost)
self.client.begin_transaction('transaction.test')
r = self.db.blogposts.update_one({'author': 'Tom'},
{'$set': {'author': 'Jerry'}})
{'$set': {'author': 'Jerry'}})
self.assertEqual(r.modified_count, 1)
self.client.end_transaction('transaction.test')
transactions, traces = self.client.instrumentation_store.get_all()
Expand All @@ -214,7 +214,7 @@ def test_collection_update_many(self):
r = self.db.blogposts.insert(blogpost)
self.client.begin_transaction('transaction.test')
r = self.db.blogposts.update_many({'author': 'Tom'},
{'$set': {'author': 'Jerry'}})
{'$set': {'author': 'Jerry'}})
self.assertEqual(r.modified_count, 1)
self.client.end_transaction('transaction.test')
transactions, traces = self.client.instrumentation_store.get_all()
Expand Down
4 changes: 3 additions & 1 deletion tests/instrumentation/urllib3_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,11 @@
import SimpleHTTPServer
from SocketServer import TCPServer


class MyTCPServer(TCPServer):
allow_reuse_address = True


class InstrumentUrllib3Test(TestCase):
def setUp(self):
self.client = get_tempstoreclient()
Expand Down Expand Up @@ -49,7 +51,7 @@ def test_urllib3(self, should_collect):
pool = urllib3.PoolManager(timeout=0.1)

url = 'http://localhost:{0}/hello_world'.format(self.port)
r = pool.request('GET', url)
pool.request('GET', url)

self.client.end_transaction("MyView")

Expand Down
4 changes: 1 addition & 3 deletions tests/transports/test_http.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,7 @@ def test_http_error(self, mock_urlopen):

@mock.patch('opbeat.transport.http.urlopen')
def test_generic_error(self, mock_urlopen):
url, status, message, body = (
'http://localhost:9999', 418, "I'm a teapot", 'Nothing'
)
url = 'http://localhost:9999'
transport = HTTPTransport(urlparse.urlparse(url))
mock_urlopen.side_effect = Exception('Oopsie')
with pytest.raises(TransportException) as exc_info:
Expand Down
9 changes: 3 additions & 6 deletions tests/transports/test_urllib3.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,17 @@
from urllib3_mock import Responses

from opbeat.transport.base import TransportException
from opbeat.transport.http_urllib3 import (AsyncUrllib3Transport,
Urllib3Transport)
from opbeat.transport.http_urllib3 import Urllib3Transport

try:
import urlparse
except ImportError:
from urllib import parse as urlparse



responses = Responses('urllib3')


@responses.activate
def test_send():
transport = Urllib3Transport(urlparse.urlparse('http://localhost'))
Expand Down Expand Up @@ -52,9 +51,7 @@ def test_http_error():

@responses.activate
def test_generic_error():
url, status, message, body = (
'http://localhost:9999', 418, "I'm a teapot", 'Nothing'
)
url, status = 'http://localhost:9999', 418
transport = Urllib3Transport(urlparse.urlparse(url))
responses.add('POST', '/', status=status, body=Exception('Oopsie'))
with pytest.raises(TransportException) as exc_info:
Expand Down
5 changes: 2 additions & 3 deletions tests/utils/compat.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@

try:
from unittest2 import TestCase
from unittest2 import skipIf
except ImportError:
from unittest import TestCase
from unittest import skipIf
from unittest import TestCase # noqa
from unittest import skipIf # noqa
4 changes: 2 additions & 2 deletions tests/utils/lru_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ def test_insert_overflow(self):
for x in range(6):
lru.set(x)

self.assertFalse(lru.has_key(1))
self.assertFalse(1 in lru)
for x in range(2, 6):
self.assertTrue(lru.has_key(x))
self.assertTrue(x in lru)