Tim Abbott
c147d2e140
notifications: Fix missed-message emails for presence-idle users.
...
This fixes an unpleasant regression in
f5edeb01ae
, where we stopped correctly
filtering users who have an open browser session that's idle. These
users are tagged as "UserPresence.IDLE" with an current timestamp in
the database, and should be treated as idle for presence purposes.
As a result, if you had an open Zulip browser session, you incorrectly
wouldn't get missed-message emails for PMs and mentions before this fix.
2018-03-16 16:30:23 -07:00
Alena Volkova
26eb23afc7
tests: Replace api_auth usages with auth methods in zerver/tests.
2017-12-18 09:24:09 -05:00
Tim Abbott
1ed50ee858
tests: Pass a realm option to login for non-zulip realms.
...
This better matches the model of how having multiple realms should
work: you need to specify which realm you're logging into.
2017-11-17 15:32:42 -08:00
Tim Abbott
8dc82f97c7
python: Wrap long def lines in test files.
...
We don't have our linter checking test files due to ultra-long strings
that are often present in test output that we verify. But it's worth
at least cleaning out all the ultra-long def lines.
2017-11-16 22:00:53 -08:00
rht
04f4f7166c
zerver/tests: Use python 3 syntax for typing.
...
This patch was extracted by tabbott for just the files with no open
PRs modifying them.
2017-11-08 12:50:27 -08:00
rht
dcc831f767
refactor: Replace all __unicode__ method with __str__.
...
Close #6627 .
2017-11-02 11:01:47 -07:00
Tim Abbott
0c44310009
tests: Don't use caching session engine in tests.
...
Because we run tests in parallel, the caching session engine can lead
to nondeterministic failures.
2017-10-06 12:22:20 -07:00
Tim Abbott
7581e0e1c5
settings: Remove remaining references to REALMS_HAVE_SUBDOMAINS.
2017-10-02 16:43:54 -07:00
Tim Abbott
26a5332828
subdomains: Update some tests to run with subdomains.
...
Specifically, our request middleware adds an extra database query for
these code paths, to verify whether the subdomain is valid.
2017-10-02 16:32:11 -07:00
rht
26f5d9a32c
zerver/tests: Remove print_function.
2017-09-27 18:05:45 -07:00
rht
1e87a4b68c
zerver/tests: Remove absolute_import.
2017-09-27 10:00:39 -07:00
Steve Howell
b6bb7f2b1e
Fix bug where we hard code realm for PushDeviceToken.
...
This had no test coverage, which is part of the reason it went
undetected, plus many instances probably only have one realm
with realm_id=1.
2017-09-08 12:32:17 -07:00
Tim Abbott
6caca80ab7
test_presence: Specify subdomains for Zephyr tests.
2017-08-25 16:08:37 -07:00
Tim Abbott
ef722c5688
tests: Remove unused ujson imports.
2017-08-17 09:05:52 -07:00
Umair Khan
351426df8b
result.json: Upgrade test_presence.
2017-08-17 09:03:35 -07:00
Umair Khan
02aab6a43f
test_presence: Upgrade to HttpResponse.json().
2017-08-16 07:06:58 -07:00
Vishnu Ks
bb98e35aa0
Replace othello@zulip.com with example_email('othello').
2017-05-24 19:37:36 -07:00
Vishnu Ks
5230eaef1c
Replace hamlet@zulip.com with example_email('hamlet').
2017-05-24 19:37:36 -07:00
Vishnu Ks
4403d179df
tests: Replace mit_user().email with mit_email().
2017-05-24 12:44:43 -07:00
Vishnu Ks
dbdc0220b9
test_presence.py: Remove unused get_user_profile_by_email import.
2017-05-23 18:31:43 -07:00
Vishnu Ks
820dc9dd9a
Replace espuser@mit.edu with mit_user('espuser').
2017-05-22 19:02:42 -07:00
Vishnu Ks
c680c5f1e8
Replace sipbtest@mit.edu with mit_user('sipbtest').
2017-05-22 19:02:42 -07:00
Steve Howell
6bc8424c71
Use self.example_user() in more places.
...
This fixes most cases where we were assigning a user to
the var email and then calling get_user_profile_by_email with
that var.
(This was fixed mostly with a script.)
2017-05-08 11:57:38 -07:00
Steve Howell
942db9b6c5
tests: Added ZulipTestCase.example_user() function.
...
The example_user() function is specifically designed for
AARON, hamlet, cordelia, and friends, and it allows a concise
way of using their built-in user profiles. Eventually, the
widespread use of example_user() should help us with refactorings
such as moving the tests users out of the "zulip.com" realm
and deprecating get_user_profile_by_email.
2017-05-08 11:57:38 -07:00
Aditya Bansal
bdcddd35d0
tests: Add wrapper for client.logout in ZulipTestCase.
...
In this commit we add a logout wrapper so as to enable developers
to just do self.logout instead of doing a post request at API
endpoint for logout. This is achieved by adding a wrapper function
for the Django's client.logout contained in TestCase. We add this
by extending ZulipTestCase to have a logout function.
2017-04-21 21:45:55 -07:00
Rishi Gupta
e14c940ecc
decorator: Add human_users_only decorator.
...
Applies it to presence.update_active_status_backend as an example of usage.
2017-04-16 12:51:23 -07:00
Tim Abbott
9400689f86
presence: Remove use of timezone.now().
2017-04-16 12:32:57 -07:00
hackerkid
b2504084ab
Replace timezone.now with timezone_now.
2017-04-16 12:28:56 -07:00
Rishi Gupta
b5482d51b1
presence.py: Change bot-related error messages to match each other.
2017-04-14 14:34:17 -07:00
Rishi Gupta
bbddbdeb25
presence.py: Enforce bots cannot use update_active_status_backend.
...
We need to keep the UserActivity table clean now that we're using it to
compute 15day actives in analytics.
2017-04-14 14:34:17 -07:00
Umair Khan
1b8d9f186e
test_presence: Change assert_max_length to assert_length.
2017-04-04 17:07:34 -07:00
Steve Howell
205f2c1562
Add ping_only flag for presence updates.
...
The web app doesn't need any presence data for its first ping to
the server, because it already has up-to-date presence info in
page_params. So now we can tell the server not to send us a big
payload that we were already ignoring.
2017-04-04 15:57:10 -07:00
Steve Howell
3a332aee0b
Exclude dormant users from buddy list queries.
...
If a user has not shown activity in two weeks, we exclude
them from the buddy list. This should help performance for
large realms and mobile clients.
2017-04-04 15:57:10 -07:00
K.Kanakhin
3e397090e1
user-presence: Add client info to aggregated presence status.
...
Fixes zulip/zulip-android#454 .
2017-03-18 20:36:41 -07:00
Tim Abbott
8675be2daf
tests: Move ModelTest to test_presence.py.
2017-03-08 03:57:37 -08:00
K.Kanakhin
173f34b7aa
user-presence: Add `offline` status to aggregated info.
...
- Add `OFFLINE_THRESHOLD_SECS` settings parameter
to handle offline period.
- Set aggregated status to offline if user's status
haven't changed for `OFFLINE_THRESHOLD_SECS` period.
- Add test for offline aggregated status.
2017-03-07 20:09:53 -08:00
K.Kanakhin
2f251dedaf
user-presence: Add aggregated status to user presence info.
...
- Add aggregated status to user presence status dict.
- Add tests for aggregated presence status.
- Fix removing unused keys from status dict
with aggregated data for user.
Fixes #3692
2017-03-07 20:09:53 -08:00
Tim Abbott
71af0f7e2e
Add endpoint to fetch presence data for a single user.
...
This is an experimental API subject to its data format being changed.
Fixes #3638 .
2017-02-10 23:52:56 -08:00
Yago González
7fe090f902
translations: Improve some poorly-worded strings.
2017-01-28 18:04:17 -08:00
Sidhant Bhavnani
8c0c12c1d9
pep8: Fix E303 violations.
2016-12-02 15:34:11 -08:00
Rafid Aslam
7a2282986a
pep8: Fix E225 pep8 violations.
2016-11-28 15:21:15 -08:00
Rishi Gupta
5681ee90fa
models.py: Rename split_email_to_domain to email_to_domain.
...
In order to better match models.email_to_username.
2016-11-11 15:26:51 -08:00
sinwar
4582a98c09
tests: Split out ZulipTestCase and WebhookTestCase to a separate file.
...
Fixes #1671 .
2016-11-10 19:29:43 -08:00
Rishi Gupta
6e9e2cc05f
Change datetime.now() to timezone.now() in various tests.
...
Good practice to use timezone-aware datetime objects unless there is a
reason to do otherwise.
2016-11-07 20:13:53 -08:00
Steve Howell
edfa022bac
Remove json/get_active_statuses endpoint.
2016-09-27 14:33:56 -07:00
Sahil Dua
058587da77
Remove extra new lines at the ends of Zulip authoried files.
...
Fixes #1627 .
[tweaked by tabbott to avoid patching third-party modules, for now]
2016-09-26 21:05:24 -07:00
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
Steve Howell
f5f7801302
tests: Extract test_presence.py
2016-09-13 14:51:36 -07:00