Tim Abbott
1549f8773e
portico: Always display org info when a server has only 1 realm.
...
Previously, we were incorrectly using the get_unique_open_realm
function to determine whether we're in the (common) single-realm
server case and should just display an org-info-enabled login form on
the homepage.
Now, we use a slightly different function extracted from
get_unique_open_realm that doesn't check whether the realm is
invite-only.
Fixes #4841 .
2017-06-02 15:00:22 -07:00
Tim Abbott
1f48fa2767
invite: Fix invite_by_admins_only to be enforced in backend.
...
This is CVE-2017-0896.
Apparently, this setting never actually was wired up to anything other
than hiding the UI widget.
Huge thanks to Ibram Marzouk from the HackerOne community for finding
this security bug.
2017-06-01 17:24:29 -07:00
Tim Abbott
73f8653da6
test_messages: Increase time allowed for bulk send.
...
This fixes an occasional test flake we've been seeing recently.
2017-06-01 00:00:36 -07:00
Aditya Bansal
a0faf3364a
pep8: Add compliance with rule E261 test_reactions.py.
2017-05-31 17:07:15 -07:00
Aditya Bansal
7bb669ccb4
pep8: Add compliance with rule E261 test_email_mirror.py.
2017-05-31 17:07:15 -07:00
Umair Khan
5d794d08dd
test_bulk_message_fetching: Add debug code.
...
This test fails on self.assertTrue(delay < 0.001 * num_ids, error_msg)
randomly. This commit adds debug code to see what the real values of
paramters are.
2017-05-31 09:27:30 -07:00
Umair Khan
71f97b7bcb
testing: Invalidate cache before counting queries.
...
To get accurate count of the queries, we should make sure that
caches don't come into play. If we count queries while caches are
filled, we will get a lower count. Caches are not supposed to be
persistent, so our test can also fail if cache is invalidated
during the course of the unit test.
This commit solves the problem with Stream cache. This cache comes
into play when we use `get_stream` function. If cache is valid,
we will not issue queries to Stream and Recipient table. I think
the problem was one of those rare occasions when the Stream cache
got invalidated during the course of the test, due to which query
count was increased by 2. After this commit, we intentially invalidate
the Stream cache.
2017-05-30 17:28:41 +05:00
K.Kanakhin
2434f2d96c
messages: Add support for admins deleting messages.
...
This makes it possible for Zulip administrators to delete messages.
This is primarily intended for use in deleting early test messages,
but it can solve other problems as well.
Later we'll want to play with the permissions model for this, but for
now, the goal is just to integrate the feature.
Note that it saves the deleted messages for some time using the same
approach as Zulip's message retention policy feature.
Fixes #135 .
2017-05-29 21:59:38 -07:00
Harshit Bansal
298e23b447
realm_emoji.py: Allow an user to delete an emoji uploaded by them.
...
If a realm is configured to allow any user to upload an emoji,
then, an emoji author must be allowed to delete an emoji uploaded
by them.
2017-05-29 20:21:25 -07:00
vaibhav
9cf9837f12
webhooks: Add outgoing webhook bot user to development database.
2017-05-29 16:01:23 -07:00
Tim Abbott
4893779001
test_events: Avoid coverage errors in LogEventsTest.
2017-05-29 15:26:33 -07:00
Maxim Averin
a4c3f571db
Switch change_tos_version to use RealmAuditLog.
2017-05-29 15:24:01 -07:00
Maxim Averin
685fb16c39
Switch change_full_name to use RealmAuditLog.
...
This requires adding an `acting_user` parameter to the
`do_change_bot_owner` function.
2017-05-29 15:22:08 -07:00
Steve Howell
1f4e1ece3a
Fix flaky time-based test.
...
For testing waiting period thresholds, we need to
explicitly set date_joined for Hamlet to be now.
2017-05-29 11:54:06 -06:00
Ron Shafii
8cc1f13d24
test: Add test_notify_realm_of_new_user.
2017-05-28 19:14:52 -07:00
Ethan Estrada
91e6f00d57
Test that `log_event` auto creates missing log dir.
2017-05-28 18:24:00 -07:00
Ethan Estrada
a11c578d57
Test for early return when "LOG_EVENT_DIR" is `None`.
2017-05-28 18:21:50 -07:00
Reid Barton
ccb4c5c26f
bots: Move zephyr-related files to api/integrations/zephyr/.
2017-05-26 15:07:02 -07:00
Tim Abbott
f5373c46f2
lint: Fix trailing newlines in outgoing webhook tests.
2017-05-25 16:28:11 -07:00
Elliott Jin
4907f24603
bots: Add additional service bot tests.
2017-05-25 15:00:51 -07:00
Elliott Jin
af49a23013
bots: Generalize service bot tests to also test embedded bots.
2017-05-25 15:00:51 -07:00
Elliott Jin
cd8c77bf91
bots: Clean up order and naming of service bot tests.
2017-05-25 15:00:51 -07:00
Elliott Jin
49adeee8c8
bots: Move service bot tests into separate file.
2017-05-25 15:00:51 -07:00
Vishnu Ks
bb98e35aa0
Replace othello@zulip.com with example_email('othello').
2017-05-24 19:37:36 -07:00
Vishnu Ks
52d2d6c4fa
Replace prospero@zulip.com with example_email('prospero').
2017-05-24 19:37:36 -07:00
Vishnu Ks
c4db3b7d1c
Replace cordelia@zulip.com with example_email('cordelia').
2017-05-24 19:37:36 -07:00
Vishnu Ks
961b35d52e
Replace iago@zulip.com with example_email('iago').
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
b65f692fcf
Make LoginEmailValidatorTestCase use ZulipTestCase instead of TestCase.
2017-05-24 19:23:48 -07:00
Tim Abbott
6aaca44e17
tests: Fix str/Text mypy issues in various tests.
2017-05-24 15:19:38 -07:00
Andrew Archer
6c3f89af1c
tests: Remove get_user_profile_by_email from numerous tests.
2017-05-24 15:19:20 -07:00
Rick Chern
e53d1c3885
tests: Remove get_user_profile_by_email from most tests.
2017-05-24 13:05:19 -07:00
Vishnu Ks
4403d179df
tests: Replace mit_user().email with mit_email().
2017-05-24 12:44:43 -07:00
Tim Abbott
e5f5e5c69f
tests: Remove unnecessary maxDiff settings.
...
Now that ZulipTestCase does this, we don't need it in all these
individual test modules.
2017-05-24 12:43:28 -07:00
umkay
ccc70445d6
mypy: Fix strict-optional errors for test files.
...
Fix mypy --strict-optional errors in zerver/tests
2017-05-24 12:43:28 -07:00
Tim Abbott
17328a7557
tests: Fix incorrect use of get_realm_by_email_domain.
2017-05-24 12:43:28 -07:00
Tim Abbott
895d4a795b
mypy: Fix a missing type annotation.
2017-05-24 12:14:13 -07:00
Umair Khan
9a04fef71b
testing: Reset active language.
...
After running translation tests, we should reset the active
language to isolate the change
2017-05-24 11:35:17 -07:00
Umair Khan
ebb9bd1a6a
testing: Avoid class variables to enforce isolation.
...
Class variables are shared between all instances and as a result
changes made by one instance are leaked to other instances.
2017-05-24 11:35:12 -07:00
Yago González
c0f2036435
api: Handle unregistered users in dev_fetch_api_key.
...
Fixes #4851 .
2017-05-24 09:39:44 -07:00
Andrew Archer
67cf4c4fb4
test_alert_words: Remove use of get_user_profile_by_email.
2017-05-23 22:14:10 -07:00
kb0rg
eb2d0ebd09
Add test for do_deactivate_realm exit if deactivated.
...
Rename existing test_do_deactivate_realm to indicate test purpose
is to confirm user realm cache clears when a realm is deactivated.
2017-05-23 21:38:07 -07:00
kb0rg
e672ec62c1
Add test for encode_email_address with empty Gateway.
2017-05-23 21:38:07 -07:00
kb0rg
d625cca2f8
minor: Rename test class -> TestEmptyGatewaySetting.
2017-05-23 21:38:07 -07:00
vaibhav
f94c321567
Outgoing Webhook System: Add support for personal message triggers.
2017-05-23 21:35:09 -07:00
Lech Kaiel
6b49e667ef
tests: Replaced @zulip.com references with self.example_ functions.
...
This cleans up the excessive use of @zulip.com emails in the tests.
2017-05-23 20:59:50 -07:00
ron-s
e5d4e0f0eb
Test: Add test_notify_of_new_user_internally.
2017-05-23 20:27:37 -07:00
Steve Howell
036f66aba3
Add test_get_avatar_url_with_user_profile_lookup test.
2017-05-23 18:35:45 -07:00
Vishnu Ks
b5c4a95ef1
test_bots.py: Use example_email instead of using the emails directly.
2017-05-23 18:31: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
2b36df6b8f
test_sessions.py: Use helpers instead of get_user_profile_by_email.
2017-05-23 15:27:21 -07:00
Vishnu Ks
dafa89d52b
test_outgoing_webhook_system.py: Replace get_user_profile_by_email with example_user.
2017-05-23 15:27:21 -07:00
Vishnu Ks
075b0cae70
test_bugdown.py: Remove unused get_user_profile_by_email import.
2017-05-23 15:27:21 -07:00
Vishnu Ks
7950f5242a
test_unread.py: Replace get_user_profile_by_email with get_user.
2017-05-23 15:27:21 -07:00
Tim Abbott
a833fa39b8
test_messages: Fix tests failing due to error message change.
2017-05-23 15:27:21 -07:00
Matt Long
19363b2b77
notification_settings: Refactor notification preference settings.
...
Previously, all notification preference setting had a dedicated test
and setter. Now, all are handled through a modular function using the
property_types framework.
2017-05-23 14:47:46 -07:00
Rick Chern
70d68f7e71
Refactoring: Replace get_user_profile_by_email() in lib/upload.py
2017-05-23 12:37:49 -07:00
Steve Howell
484f32646b
Rename file to test_new_users.py.
...
The old file name of test_send_login_emails was
overly specific, and we want to add some tests
related to other parts of the signup process.
2017-05-23 12:34:44 -07:00
vaibhav
287aaa21b6
Outgoing Webhook System: Add outgoing webhook queue worker.
2017-05-23 08:21:08 -07:00
vaibhav
53a8b2ac87
Outgoing Webhook System: Add DoRestCall and helper functions
2017-05-23 08:19:16 -07:00
Vishnu Ks
820dc9dd9a
Replace espuser@mit.edu with mit_user('espuser').
2017-05-22 19:02:42 -07:00
Vishnu Ks
99fc0e9e62
Replace starnine@mit.edu with mit_user('starnine').
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
Vishnu Ks
05951074be
Make MITNameTest use ZulipTestCase instead of TestCase.
2017-05-22 19:02:42 -07:00
Lukasz Prasol
5eaccc550a
rate_limit: Make retry-after data machine-readable.
...
Fixes #4831 .
2017-05-22 17:35:12 -07:00
umkay
510b7a0489
mypy: Add ignore type for dynamically added field on LogRecord.
...
mypy will error because of the attribute "request" on the LogRecord
object. Since this field is added in our tests dynamically and is not
on the base object, for now we will ignore the type.
2017-05-22 14:38:39 -07:00
Tim Abbott
040067b2a2
invite: Remove obsolete bulk_invite_users endpoint.
2017-05-17 17:30:15 -07:00
Aditya Bansal
57bc847874
pep8: Add compliance with rule E261 to test_urls.py.
2017-05-18 03:00:32 +05:30
Umair Khan
38ecc35cd9
push_notifications: Catch IOError while pushing to GCM.
2017-05-17 12:14:32 -07:00
Umair Khan
7e8f4ca4e8
push_notifications: Include GCM in end-to-end test.
2017-05-17 08:09:19 -07:00
Tim Abbott
cab908b664
api: Move notifications_stream into the register_ret API.
...
While we're at it, we at least fix the API to use a stream ID, not a
stream name, to refer to the notifications stream.
2017-05-16 18:57:14 -07:00
Tim Abbott
9d63a5ab3a
push_notification: Delete obsolete DBX_IOS_APP_ID code.
...
I'm not sure that this was ever actually used, but it's definitely
just clutter for Zulip today.
2017-05-16 12:26:55 -07:00
Umair Khan
fa5c66c439
push_notifications: Add num_push_devices_for_user tests.
2017-05-16 12:26:55 -07:00
Umair Khan
88f5d29e19
push_notifications: Add send_to_push_bouncer tests.
2017-05-16 12:26:55 -07:00
Umair Khan
af27ad607a
push_notifications: Add handle_push_notification tests.
2017-05-16 12:26:55 -07:00
Umair Khan
8a6498f55d
push_notifications: Create BouncerTestCase.
...
Adds bounce_request method to simulate a bounce.
2017-05-16 12:26:55 -07:00
Umair Khan
5907877038
push_notifications: Add test for send_notifications_to_bouncer.
2017-05-16 12:26:55 -07:00
Umair Khan
fab4249893
push_notifications: Add get_gcm_payload tests.
2017-05-16 12:26:55 -07:00
Umair Khan
136a950041
push_notifications: Add test for APNs payload.
2017-05-16 12:26:55 -07:00
Umair Khan
47d0f7d996
push_notifications: Add tests for get_alert_from_message.
2017-05-16 12:26:55 -07:00
Umair Khan
df0d29aaff
push_notifications: Add response_listener tests.
2017-05-16 12:26:55 -07:00
Steve Howell
e6cc0ffcdd
Eliminate PMs to non-subscribers when creating streams.
...
This should make stream creation relatively fast again, since we
will no longer send O(N) PMs out to tell folks the stream was
created.
2017-05-16 10:43:27 -07:00
Steve Howell
bbd8c1c49b
Do not send PMs to subscribers when creating streams.
...
When we create a stream, we usually send a welcome message on the
stream itself as well as an announcement on the announcement stream,
but we no longer PM the individual users. Hopefully this will be
more pleasant for users (less spammy), and it also will make creating a
stream a lot faster.
We still send notifications when we add subscribers to an existing
stream.
2017-05-16 08:58:17 -07:00
Steve Howell
e2732dabf3
Send welcome messages as part of /create_realm flow.
...
We now pre-populate the streams in DEFAULT_NEW_REALM_STREAMS
(social/general/zulip, unless somebody changes settings.py) with
welcome messages. This makes the streams appear to be active
right away, and it also gives the Zulip realm less of a
blank-slate feeling when you create it.
This change only affects the normal web-based create-realm flow.
It doesn't impact the management commands for creating realms
or setting default streams.
2017-05-15 20:38:08 -07:00
Tim Abbott
97abaae9af
home: Remove now-unnecessary page_params_core_fields duplication.
...
Also, we update the documentation to make the overall system a bit
clearer.
Fixes #4628 .
2017-05-13 22:58:18 -07:00
Tim Abbott
acb3c1e7ff
test_templates: Fix errors from compare.html template.
2017-05-13 14:57:06 -07:00
Tim Abbott
51978d0f89
tests: Fix failing login tests.
...
Apparently I missed these when updating
4d2bb0dec8
.
2017-05-13 13:05:15 -07:00
Tim Abbott
4d2bb0dec8
templates: Clean up visuals for account-not-found SSO flow.
...
Also, clarify that the account that isn't found is your Zulip account,
not a GitHub/Google Oauth account.
2017-05-13 12:46:05 -07:00
Tim Abbott
72abd4f12d
mentions: Fix subject line and sender for missed-message mentions.
...
This fixes 2 issues:
* The term "@-mentioned" is simplified to "mentioned".
* We would incorrectly list other people who sent context messages as
among the people who mentioned you.
2017-05-12 13:50:25 -07:00
James Rowan
0facaa0797
Changes sender and subject lines for missed message emails.
...
Now, in the event of messages between two other members of a huddle,
the missed message emails are threaded in "Group PMs with name1 and
name2" and not in separate threads by sender.
Also, now the order of recipients in get_display_recipient consistent
with the order of names that appears in the list of personal messages
on the left sidebar.
Fixes most of #4553 .
2017-05-12 13:29:43 -07:00
Tim Abbott
13a37f74a1
users: Ban names shorter than 3 characters.
...
The empty string is not a reasonable name.
2017-05-11 19:21:51 -07:00
Cory Lynch
68e5898a07
emoji.py: Add restriction that realm emoji must be lowercase.
...
Raises error if emoji name has an uppercase letter in it.
2017-05-11 19:10:21 -07:00
Tim Abbott
223624be25
settings: Add support for longer, markdown-powered realm descriptions.
...
This makes it possible to create much prettier login pages.
Further work on styling may be necessary.
2017-05-11 13:59:46 -07:00
Umair Khan
dc2a9a4c5b
github: Add sign up button on registration page.
2017-05-10 17:49:08 -07:00
Umair Khan
d56db0a3b4
auth.py: Add confirmation handlers for signup.
...
These handlers will kick into action when is_signup is False. In case
the account exists, the user will be logged in, otherwise, user will
be asked if they want to proceed to registration.
2017-05-10 17:20:34 -07:00
Tim Abbott
e8eaec0a18
mypy: Fix various errors caught by removing cache_with_key.
2017-05-10 14:37:20 -07:00
Tim Abbott
a0a50d410c
test_docs: Add tests to ensure all integrations present.
2017-05-10 11:30:32 -07:00
Tim Abbott
232592cc9f
test_sessions: Extends tests to reach 100% coverage of sessions.py.
...
Fixes #3980 .
2017-05-10 10:12:21 -07:00
andrewallen00
53f1f75fcb
Add tests for zerver/lib/sessions.py.
2017-05-10 10:12:14 -07:00
Tim Abbott
9f7236eec1
message: Remove unused old gravatar_hash field from message dicts.
...
This was deprecated and replaced some 4 years ago.
2017-05-09 22:33:27 -07:00