Supriya
4959e8d10a
tests: Extract and use assert_max_length test helper.
...
This makes it much more explicit in which cases we're checking
equality or a maximum in our use of `assert_length`.
Fixes #1400 .
2016-09-25 15:44:58 -07:00
Rishi Gupta
03ce3e5fa4
test_signup.py: Refactor getting confirmation_urls to test_helpers.py
...
It is a bit of tricky / scary looking code that was repeated several times
in test_signup.
2016-09-23 15:44:28 -07:00
Tomasz Kolek
9197c82d8f
Move WebhookTestCase class from test_hooks.py to test_helpers.py.
2016-09-23 10:02:16 -07:00
Steve Howell
de25f07961
tests: Add BugdownErrorTests.
2016-09-16 10:01:55 -07:00
Steve Howell
edf7ea7f51
tests: Add make_client() test helper.
2016-09-13 14:32:59 -07:00
Tim Abbott
d964e5595a
Finish annotating test_helpers.py.
2016-09-12 08:29:34 -07:00
Steve Howell
cdee3dfb53
Annotate test_helpers.instrument_url().
2016-09-12 08:21:46 -07:00
Steve Howell
30129f609b
Annotate client_post() and client_get() in test_helpers.
2016-09-11 17:15:35 -07:00
Steve Howell
fd6ee7117f
tests: Renamed AuthedTestCase to ZulipTestCase.
2016-08-22 19:07:44 -07:00
Steve Howell
125dcad379
tools: Report OverflowErrors in url coverage report.
2016-08-18 13:28:58 -07:00
Tim Abbott
5253c044e7
test_helpers: Add some missing annotations.
2016-08-04 15:57:03 -07:00
Steve Howell
2a37dafcbb
Write untested_url_report.txt.
2016-07-29 21:26:51 -07:00
Steve Howell
8b13530712
Add tools/analyze-url-coverage
2016-07-29 21:23:33 -07:00
Steve Howell
21f83afe3a
Add --url-coverage option to ./tools/test-backend.
2016-07-29 21:23:33 -07:00
Steve Howell
713797a65c
Add lint checks for self.client.{get,patch,put,post,delete}.
2016-07-27 20:50:54 -07:00
Steve Howell
6937f63fd5
Add client_get() test helper.
2016-07-27 20:49:33 -07:00
Steve Howell
38f2a2f475
Add client_post() test helper.
...
This makes us more consistent, since we have other wrappers
like client_patch, client_put, and client_delete.
Wrapping also will facilitate instrumentation of our posting code.
2016-07-27 20:49:32 -07:00
Steve Howell
51bae8abc4
Remove stub() test helper.
2016-07-27 14:12:10 -07:00
Steve Howell
21fb7693d2
Add test_helpers.client_patch_multipart().
2016-07-13 22:53:40 -07:00
Steve Howell
701bb7a59f
Remove test_helpers.DummySession
2016-07-13 19:08:28 -07:00
Steve Howell
616e49e2e8
Remove test_helpers.DummyTornadoRequest
2016-07-13 19:08:28 -07:00
Steve Howell
0060ea7903
Remove test_helpers.DummyStream
2016-07-13 19:08:28 -07:00
Steve Howell
191ac80475
Remove callback logic from test_helpers.DummyHandler.
2016-07-13 19:08:28 -07:00
Eklavya Sharma
993558c680
Get mogrified SQL queries as text.
...
zerver.lib.test_helpers.queries_captured returns a byte string,
while we want the queries to be text. So decode the captured
queries.
2016-07-13 16:00:46 -07:00
Eklavya Sharma
161c27d0e9
Add methods to AuthedTestCase to test response content.
...
Add methods assert_equals_response and assert_in_response to
AuthedTestCase. These methods make it convenient to check if
a string equals the contents of an HttpResponse's body or if a
string is a substring of the contents of an HttpResponse's body.
2016-07-12 14:06:29 -07:00
Eklavya Sharma
4868cd9969
zerver/lib/test_helpers.py: Add skip_py3 decorator.
2016-07-12 09:27:55 -07:00
Umair Khan
2d243c0703
get_all_templates should not return __init__.py.
2016-07-09 07:09:55 -07:00
Eklavya Sharma
ce6ddd574a
zerver/lib/test_helpers.py: Replace os.path.walk by os.walk.
...
os.path.walk has been removed in python 3.
2016-07-06 11:49:55 -07:00
Eklavya Sharma
9772a512cb
Use abstract types in annotations.
2016-07-04 03:01:32 +05:30
Tim Abbott
0397855fdd
test_hooks: Use send_json_payload for private message tests.
2016-06-30 15:12:03 -07:00
Eklavya Sharma
2cba2caa7f
zerver/lib/test_helpers.py: Fix string annotations.
2016-06-29 01:54:17 +05:30
Eklavya Sharma
d9eb711e5e
zerver/tests/test_helpers.py: Use text_type for api_keys.
...
Also encode/decode strings appropriately when using api_keys to generate
basic auth header.
Also fix clashing annotations in zerver/tests/test_external.py.
2016-06-29 01:50:38 +05:30
Eklavya Sharma
eb3bde40a0
zerver/lib/test_helpers.py: Improve type annotations.
2016-06-29 01:35:34 +05:30
Eklavya Sharma
b305af05b3
Fix string annotations in custom cursors.
2016-06-28 15:58:57 +05:30
Tim Abbott
f7e87bc1f0
test_helpers: Require that login calls actually succeed.
...
This caught several bugs where test code wasn't doing what it's author
intended.
2016-06-27 11:51:04 -07:00
Tim Abbott
4cac7bbb32
test_helpers: Refactor login test helpers.
...
We now have a separate login helper for the case where the return
value is desired.
2016-06-27 11:50:43 -07:00
Tomasz Kolek
9ae68ade8b
Add is_webhook option to authentication decorats.
...
Modified:
authenticated_rest_api_view
authenticated_api_view and validate_api_key.
2016-06-21 11:47:38 -07:00
Tim Abbott
49ae0052b2
send_json_payload: payload arg can be text_type.
2016-06-16 14:07:34 -07:00
Tim Abbott
df9f89fe2c
test_helpers: Change send_json_payload to use text_type.
2016-06-16 14:07:34 -07:00
Tim Abbott
b14eacd552
test_helpers: Change fixture_data to text_type.
2016-06-16 14:07:34 -07:00
Tomasz Kolek
4e51a86ea4
Add updownio integration.
2016-06-14 12:14:07 -07:00
Eklavya Sharma
6f5ed6e7c9
Fix annotations clashing with Stream model fields.
2016-06-13 20:01:02 +05:30
Eklavya Sharma
c654c4032d
zerver/models.py: Annotate get_display_recipient.
...
get_display_recipient's annotation clashes with other wrong annotations.
Fix those wrong annotations.
Since get_display_recipient returns a Union, use isinstance checks and
casts to make mypy checks succeed.
2016-06-12 23:34:57 +05:30
Eklavya Sharma
53084fe03c
Use text_type as type of cache keys and update users.
...
This changes the type annotations for the cache keys in Zulip to be
consistently text_type, and updates the annotations for values that
are used as cache keys across the codebase.
2016-06-11 09:10:34 -07:00
Daw-Ran Liou
70f44c00b0
check_send_message: Replace args/kwargs with explicit args.
...
This lets us actually type-checks the various views that are using
check_send_message.
2016-06-05 14:30:38 -07:00
Tim Abbott
f1d58e767b
Annotate zerver/tests/test_subs.py.
...
This required a number of unique-related changes to test_helpers.
2016-06-04 11:53:10 -07:00
Conrad Dean
7f61a5e862
Add type annotations to zerver.lib.test_helpers.
2016-06-03 12:17:26 -07:00
Umair Khan
c884559ec6
Show templates rendered report.
...
Add two options to the `test-backend` script:
1. verbose
If given the `test-backend` script will give detailed output.
2. no-shallow
Default value is False. If given the `test-backend` script will
fail if it finds a template which is shallow tested.
2016-05-31 16:46:11 +05:00
Tomasz Kolek
c4254497b2
Add WebhookTestCase abstract class for writing webhook tests.
...
This cuts a ton of code duplication and semi-duplication between the
webhook tests, and thus should make it a lot easier to write new ones.
2016-05-18 14:37:31 -07:00
Tim Abbott
9da73b22d3
assert_json_error_contains: Support passing a status code.
...
Previously this test helper function hardcoded 400.
2016-05-10 09:50:48 -07:00
Tim Abbott
aebe7334a4
style: Fix missing :s between dict keys and values.
2016-04-27 22:23:40 -07:00
Tomasz Kolek
12fc4f047c
test_helpers: Create get_last_message helper.
2016-04-26 09:54:02 -07:00
Ashish
cb8da46bbf
Replace /json/get_old_messages with REST style route.
2016-04-11 21:38:23 -07:00
Varshit
4e1060076d
Purge 'from typing import *' from zerver/.
...
This is a partial implementation of #636 .
2016-04-07 14:07:07 -07:00
Tim Abbott
e3ec3e2526
Add type: ignore for test_helpers monkey-patching.
2016-04-03 15:40:24 -07:00
Tim Abbott
2059f650ab
Add PEP-484 type annotations to zerver/lib/.
2016-04-03 15:40:23 -07:00
Tim Abbott
77be524dc4
Add PEP-484 type annotations to generator functions.
2016-04-03 15:40:05 -07:00
Tim Abbott
bf43db0dad
Send responses from fetch_events in dict format.
2016-03-30 22:04:09 -07:00
Tim Abbott
23705f4f16
Remove duplicate self._log_data initialization.
2016-02-03 19:29:07 -08:00
Tim Abbott
6528b18ad3
Switch all urllib/urlparse usage to six.moves.urllib.
...
This provides Python 2+3 compatibility for our use of urllib.
Also add a test to avoid future regressions.
2016-01-26 21:09:43 -08:00
Tim Abbott
ea6211c041
Allocate handler ids in AsyncDjangoHandler setup process.
2016-01-26 20:56:53 -08:00
Tim Abbott
5a6154c8ba
test_helpers: Fetch streams from cache in subscribe_to_stream.
2016-01-26 20:41:01 -08:00
Tim Abbott
f6f8f1fe36
Use new-style classes consistently for Python 3 support.
...
Also add the fixer for this to our list of fixers we check.
2015-11-04 08:01:52 -08:00
Tim Abbott
651b011514
Apply Python 3 futurize transform libmodernize.fixes.fix_basestring.
2015-11-01 09:26:16 -08:00
Tim Abbott
43abd83d1c
Apply Python 3 futurize transform lib2to3.fixes.fix_ws_comma.
2015-11-01 09:26:14 -08:00
Tim Abbott
71a06d58de
Convert uses of Realm.objects.get() to get_realm().
...
get_realm is better in two key ways:
* It uses memcached to fetch the data from the cache and thus is faster.
* It does a case-insensitive query and thus is more safe.
2015-10-15 09:16:58 -04:00
Tim Abbott
0494e40c39
Merge zerver/tornado_callbacks.py into zerver/lib/event_queue.py.
...
It had stopped being a coherently distinct component a while ago.
(imported from commit 0617957bcfe8dcaf69143c88a96ddd51ecb31a98)
2014-04-23 17:22:31 -07:00
Zev Benjamin
814aed7cbe
Send an event when a stream is created, is deleted, becomes occupied, or becomes vacant
...
A stream is vacant when it has no subscribers and occupied when it has at least
one subscriber.
We have a slightly odd model where stream creation is conflated with
subscription creation. Streams are created by attempting to subscribe to a
stream that doesn't exist. We also hide streams with no subscribers from users
to make it seem like they've gone away. However, we can't actually remove those
streams because we want to preserve history.
This commit moves us towards a separation of these two concepts. By sending
events for stream creation, occupation, vacancy, and deletion, we allow clients
to directly observe the global state of streams rather than indirectly observing
subscription information. A more complete solution would involve adding a view
for explicitly creating streams without subscribing to them.
This commit does not handle the intricacies of invite-only streams. We
currently simply do not send these events for invite-only streams.
(imported from commit 5430e5a5eecefafcdba4f5d4f9aa665556fcc559)
2014-03-03 17:30:58 -05:00
Jessica McKellar
ea934cf286
Add backend tests for group signups.
...
(imported from commit bbb415f40225e6fc16aa8d1edf0b95b37e09f751)
2014-01-31 17:12:10 -05:00
Jessica McKellar
9b1090506e
Add tests for admins unsubscribing principals.
...
(imported from commit a2599ddc55ccddde3d39cb125bb1d5079772c652)
2014-01-31 11:23:14 -05:00
Steve Howell
5acf8ac0b6
Split out zerver/test_messages.py.
...
(imported from commit 61c40418bad4628a8f98298587a0e0defa9302bd)
2014-01-31 11:22:49 -05:00
Jessica McKellar
da3fc3fede
Add tests for stream deletion.
...
(imported from commit bfe52c6c5be3fc36907071f9ff096cf74aa9fb22)
2014-01-29 13:09:50 -05:00
Steve Howell
1dd674c7ae
Make import statements take less vertical space.
...
(imported from commit 4d5901491d6c8c21fe045ac9751bc80613f94a59)
2014-01-28 17:04:51 -05:00
Steve Howell
80af0b8134
Move AuthedTestCase to test_helpers.py
...
(imported from commit bdaf63c5ed4e8d7c19e9c19f79151e8e7885c53e)
2014-01-28 17:04:51 -05:00
Steve Howell
a8f2ecf48c
Move context managers to zerver/lib/test_helpers.py
...
(imported from commit f57678fcb68aecdbb70ad86cd02cc5441695aaf5)
2014-01-28 17:04:50 -05:00