derAnfaenger
cbadd3d430
embedded bots: Simplify StateError exception messages.
2017-11-21 21:10:12 -08:00
Tim Abbott
665fc594db
auth: Set valid_attestation more unconditionally in social auth.
2017-11-21 20:14:12 -08:00
Tim Abbott
ade5b4ea69
auth: Convert SocialAuthMixin to accept a realm object.
2017-11-21 20:14:12 -08:00
Tim Abbott
0377288f68
auth: Fix GitHub test for invalid user account.
2017-11-21 20:14:12 -08:00
Tim Abbott
251a537e0d
auth: Set the subdomain in more GitHub auth tests.
...
This should have been set in basically all of these tests to set them
up properly, and this issue will matter after upcoming changes.
2017-11-21 20:14:12 -08:00
Tim Abbott
732dd1b6a3
auth: Improve logic for invalid GitHub emails.
...
This deletes the old mock-covered test for this, which was mostly
useless. We have a much less messy test, which we extend to provide
the same test coverage the old one did.
While the result was the same before, this makes it more obvious.
2017-11-21 20:14:12 -08:00
Vishnu Ks
766511e519
actions: Mark all messages as read when user unsubscribes from stream.
...
This fixes a bug where, when a user is unsubscribed from a stream,
they might have unread messages on that stream leak. While it might
seem to be a minor problem, it can cause significant problems for
computing the `unread_msgs` data structures, since it means we need to
add an extra filter for whether the user is still subscribed, either
in the backend or in the UI.
Fixes #7095 .
2017-11-21 20:09:17 -08:00
Tim Abbott
e0b56c72de
ldap: Simplify logic for user creation.
...
self._realm can't be None here with the new logic in authenticate().
2017-11-21 19:08:45 -08:00
Tim Abbott
c4c8879cf7
ldap: Fix the error message for deactivated users.
2017-11-21 18:35:05 -08:00
Tim Abbott
3bfb19b5f3
Convert EmailAuthBackend and LDAPAuthBackend to accept a realm.
2017-11-21 18:23:50 -08:00
Tim Abbott
a7d51127fb
auth: Convert GoogleMobileOAuth2Backend to accept a realm object.
2017-11-21 18:23:49 -08:00
Tim Abbott
07bc31f818
auth: Convert DevAuthBackend to accept a realm object.
2017-11-21 18:23:49 -08:00
Tim Abbott
4968631d1b
auth: Convert DevAuthBackend to use a unique argument pattern.
...
This helps ensure that we won't accidentally activate this backend on
other code paths.
2017-11-21 18:23:49 -08:00
Tim Abbott
d63e9f240c
auth: Remove unnecessary remote_user=None code path.
...
This code path was only required because we had remote_user set as a
positional argument here, and thus we'd be running this auth backend's
code when actually using another auth backend (due to how Django auth
backends are selected based on argument signature).
2017-11-21 18:23:49 -08:00
Tim Abbott
387c9109ec
auth: Convert RemoteUserBackend to accept a realm object.
2017-11-21 18:23:49 -08:00
Tim Abbott
f17974ab32
DummyAuthBackend: Require being passed a realm object.
...
We should now always know the realm in our auth code paths.
2017-11-21 18:22:37 -08:00
Vishnu Ks
34689370cd
settings: Create UI and backend for setting signups stream.
2017-11-21 17:39:51 -08:00
Vishnu Ks
3d2c9c6098
models: Replace core team with Realm.INITIAL_PRIVATE_STREAM_NAME.
2017-11-21 17:39:51 -08:00
Vishnu Ks
a0275a6257
actions: Send new user messages to signup_notifications_stream.
2017-11-21 17:39:50 -08:00
Tim Abbott
29408d24ff
emoji: Rework reactions validation to have a single function.
...
This feels more readable to me, and also identified a couple cases
where we were missing test coverage.
2017-11-20 15:27:21 -08:00
Harshit Bansal
87b523f3ef
emoji.py: Refactor emoji data consistency checking functions.
...
Inorder to provide more explicit error messages I have merged the
`emoji_code_is_valid()` and `emoji_name_is_valid()` functions into
`check_emoji_code_consistency()` and `check_emoji_name_consistency()`
respectively.
2017-11-20 15:27:21 -08:00
Harshit Bansal
9a4d5fe1f8
test_reactions.py: Extract `EmojiBaseReaction` test class.
2017-11-20 15:27:20 -08:00
Rishi Gupta
27babcf92b
portico: Update error message for deactivated user.
...
The installation admin is not the right person to get support requests from
deactivated users, regardless of the situation.
Also updates the wording to be a bit more concise.
2017-11-20 13:40:51 -08:00
Tim Abbott
0667a62244
password reset: Simplify password reset form logic.
...
Now that we're generating the URL inside the Python code, we can clean
up the context logic.
2017-11-20 10:40:33 -08:00
Tim Abbott
c8edbae21c
password reset: Fix error message for invalid realm.
...
This is a lot cleaner than the previous model.
Basically rewritten by Vishnu Ks to actually work :).
2017-11-20 10:34:55 -08:00
Tim Abbott
10fbafa13e
PasswordResetTest: Clean up mocking of logging.info.
2017-11-20 10:32:40 -08:00
Umair Khan
95ba3e7cbb
password_reset: Send email unconditionally.
...
This was basically rewritten by tabbott, because the code is a lot
cleaner after just rewriting the ZulipPasswordResetForm code to no
longer copy the model of the original Django version.
Fixes #4733 .
2017-11-20 10:32:40 -08:00
Shubham Dhama
8b152fc109
email: Fix identification of chrome as safari on ios
...
The user agent(UA) string for chrome on ios contains "crios" instead of "chrome".
Added the missing test for corresponding case.
Fixes : #7441 .
2017-11-19 17:07:33 -08:00
Rishi Gupta
f6bf11f5e6
portico: Add for/mystery-hunt.
2017-11-19 17:04:17 -08:00
rht
4a07214725
zerver/tests: Use python 3 syntax for typing.
2017-11-18 15:41:16 -08:00
rht
6c28c7e879
zerver/tests: Use python 3 syntax for typing.
2017-11-18 15:35:57 -08:00
Tim Abbott
462b7a1b3c
tests: Expand test coverage of OurAuthenticationForm.
...
This adds tests for a new more cases. Some were already covered
elsewhere in the codebase, but it feels best for LoginTest to fully
cover OurAuthenticationForm.
2017-11-17 17:31:38 -08: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
1e334f41ed
test_subs: Fix nondeterministic failures in default stream tests.
...
Here we sort the streams before comparing them.
2017-11-17 15:32:42 -08:00
derAnfaenger
395f1e9270
embedded bots: Add database config storage.
...
Storage limititations are only set on the value of
a config entry, since this is the only user-accessible
part of the schema. Keys are statically set by each
embedded bot.
2017-11-16 23:06:38 -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
4f5b1c0a5a
zerver/tests: Use python 3 syntax for typing in most files.
2017-11-16 21:52:01 -08:00
Vishnu Ks
068912ca7d
tests: Add test for default stream group signup flow.
2017-11-16 21:17:31 -08:00
Vishnu Ks
cc553125a1
tests: Move check_user_subscribed_only_to_streams to test_classes ZulipTestCase.
2017-11-16 21:17:31 -08:00
Vishnu Ks
1b9b142d51
test_signup: Store return value of sorted.
...
Sorted does not sort in-place.
2017-11-16 21:17:31 -08:00
Harshit Bansal
d9c2f613e3
api: Add new endpoint for reactions.
...
This endpoint will allow us to add/delete emoji reactions whose emoji
got renamed during various emoji infra changes. This was also a
required change for realm emoji migration.
This commit was tweaked significantly by tabbott for greater clarity
(with no changes to the actual logic).
2017-11-16 20:52:15 -08:00
Tim Abbott
638eb7a8e4
docs: Update links to ReadTheDocs to always use https.
...
This is better security practice.
We also add a lint rule to enforce this for the future.
2017-11-16 10:59:24 -08:00
Tim Abbott
054952a44a
docs: Update links from codebase to point to ReadTheDocs.
2017-11-16 10:53:49 -08:00
Harshit Bansal
5e5bb02e39
bugdown: Remove `make_realm_filters()`.
...
This commit removes `make_realm_filters()` and merges its functionality
in `make_md_engine()` and `maybe_update_markdown_engines()`.
2017-11-15 22:47:11 -08:00
Harshit Bansal
e615a2ab4f
bugdown: Simplify the "opts" parameter of `make_md_engine()`.
2017-11-15 22:47:11 -08:00
Harshit Bansal
e3f2f67d0e
bugdown: Rename `maybe_update_realm_filters()`.
...
This commit renames `maybe_update_realm_filters()` to
`maybe_update_markdown_engines()` which sounds closer
to the semantics.
2017-11-15 22:47:11 -08:00
Umair Khan
98be0cc502
user-groups: Send delete user group event.
...
Fixes #7380
2017-11-15 22:35:43 -08:00
Umair Khan
79f4a7627f
user-groups: Send remove members event.
2017-11-15 22:35:23 -08:00
Umair Khan
cec3f19366
user-groups: Send add members event.
2017-11-15 22:35:23 -08:00
Umair Khan
eb48fab495
user-groups: Send description update event.
2017-11-15 22:35:23 -08:00
Umair Khan
5571122120
user-groups: Send name update event.
2017-11-15 22:35:23 -08:00
Umair Khan
912505317a
user-groups: Send create group event.
2017-11-15 22:35:23 -08:00
Tim Abbott
f02e5b90f6
cross_realm: Use bulk_get_users to fix handling of missing users.
...
This fixes a regression in ae5ba7f4fd
,
where Zulip would 500 if the newly added system bots didn't exist on
the server.
This also fixes a moderate size performance problem where we'd fetch 5
users from memcached or the database in a loop.
2017-11-15 21:24:51 -08:00
Brock Whittaker
f9f0f356be
settings: Add backend storage and interface for night mode.
...
This allows the night mode setting to be stored in the backend.
2017-11-15 16:36:06 -08:00
Tim Abbott
85844107fd
integrations: Remove code for legacy Hubot lozenges.
...
We no longer display the only model anyway.
2017-11-15 14:04:19 -08:00
Steve Howell
dbcc76b996
Fix MissedMessageWorker.
...
This fixes a regression in 25c669df52
.
We were draining the queue in both the superclass and the subclass,
so by the time the subclass started processing events, there were
no events to process. Now the subclass properly uses the events
passed in from the superclass.
2017-11-15 10:26:28 -08:00
Steve Howell
ae5ba7f4fd
Add a couple cross-realm bots.
...
These are new:
new-user-bot
emailgateway
Our cross-realm bots are hard coded to have email addresses
in the `zulip.com` domain, and they're not part of ordinary
realms.
These have always been cross-realm, but new enforcement in the
frontend code of all messages having been sent by a known user means
that it's important to add these properly.
2017-11-14 16:02:19 -08:00
Vishnu Ks
36f29764cb
emails: Add option to forward mails send in dev env to external email.
...
Fixes #7085 .
2017-11-14 15:27:29 -08:00
Vishnu Ks
d2555e8769
api: Add support to change name of default stream groups.
2017-11-14 14:41:42 -08:00
Vishnu Ks
2af249dd5d
api: Add description attribute to default stream group.
2017-11-14 14:41:42 -08:00
Vishnu Ks
f45ba7de93
api: Pass group id instead of name to default stream group api.
2017-11-14 14:41:42 -08:00
Tim Abbott
a86968cd44
landing_nav: Fix missing login_link_disabled check.
...
This caused login links to incorrectly appear on the zulipchat.com
homepage.
2017-11-13 17:07:17 -08:00
Umair Khan
ad8f5650a3
user-groups: Generate test data of user groups.
2017-11-13 13:08:15 +05:00
derAnfaenger
25bf15a3c9
bots: Use non-generic exception for state key removal.
2017-11-10 18:56:26 -08:00
derAnfaenger
8fccf36246
bots: Wrap StateError exceptions around BotUserData exceptions.
2017-11-10 18:56:26 -08:00
derAnfaenger
d707e3bc1d
bots: Add USER_STATE_SIZE_LIMIT setting.
2017-11-10 18:56:26 -08:00
derAnfaenger
545c73c79e
bots: Rename StateHandlerError to StateError.
2017-11-10 18:54:54 -08:00
derAnfaenger
71372610e3
bots: Validate state size limit directly in set_bot_state().
2017-11-10 18:54:39 -08:00
derAnfaenger
6c543d1280
bots: Make StateHandler test more accurate.
2017-11-10 18:45:52 -08:00
Tim Abbott
54aa87fba3
api: Migrate to using the new version of the API site.
2017-11-10 17:56:22 -08:00
Tim Abbott
a23378a304
check_short_string: Verify string before checking length.
...
While the previous implementation was correct, this should give better
error messages.
2017-11-10 16:37:43 -08:00
Vishnu Ks
f44b60a150
Implement API for default stream groups.
2017-11-10 16:05:36 -08:00
Eeshan Garg
9c2cab50ca
test_docs: Verify that all of our integrations/ docs are rendered.
...
Fixes #7360 .
2017-11-10 20:11:55 -03:30
derAnfaenger
032fad2cf1
queue_processors: Add error coverage for MessageSenderWorker.
2017-11-10 13:23:53 -08:00
derAnfaenger
d9571698f2
queue_processors: Add coverage for get_active_worker_queues().
2017-11-10 13:23:53 -08:00
derAnfaenger
7777a81dbf
queue_processors: Add full coverage for SlowQuery.
2017-11-10 13:23:53 -08:00
Steve Howell
b6ebead827
tests: Add test_raw_unread_stream().
2017-11-10 10:50:57 -08:00
Steve Howell
23f7615adb
tests: Add test_raw_unread_huddle().
2017-11-10 10:50:57 -08:00
Steve Howell
db8c69ff03
tests: Add test_raw_unread_personal().
2017-11-10 10:50:57 -08:00
Steve Howell
5a99fa4990
tests: Extract GetUnreadMsgsTest.mute_(stream,topic) helpers.
...
This also introduces the GetUnreadMsgsTest class, and it fixes
the topic_name field that was accidentally hard coded in mute_topic.
2017-11-10 10:50:57 -08:00
Steve Howell
c799ec0ca6
minor: Inline get_unread_message_ids_per_recipient().
...
This method was only used in one test.
2017-11-10 10:50:57 -08:00
Umair Khan
4c6a376fd5
user-groups: Add groups to page_params.
2017-11-09 17:35:46 -08:00
Umair Khan
b1603d289c
user-groups: Add update members API endpoint.
...
Significantly modified by tabbott to fix some bugs.
2017-11-09 17:35:37 -08:00
Umair Khan
a1b894a786
user-groups: Add delete API endpoint.
...
Significantly modified by tabbott to fix some bugs.
2017-11-09 17:35:30 -08:00
Umair Khan
eeaf0f1742
user-groups: Add edit API endpoint.
...
Significantly modified by tabbott to fix some bugs.
2017-11-09 17:35:22 -08:00
Umair Khan
1bbe84af49
user-groups: Add create API endpoint.
...
Significantly modified by tabbott for better security structure.
2017-11-09 17:26:14 -08:00
derAnfaenger
7798aae6ca
queue processors: Add full coverage for DigestWorker.
2017-11-09 16:01:24 -08:00
derAnfaenger
dac44dda92
Cover users without activity record in email queue digest tests.
2017-11-09 16:01:24 -08:00
derAnfaenger
970e8c5df2
queue processors: Add full coverage for FetchLinksEmbedData.
2017-11-09 16:01:24 -08:00
Tommy Ip
bcd575d8de
bugdown: Rewrite links to local server to be relative links.
...
Fixes #7247
2017-11-09 15:59:31 -08:00
Tim Abbott
982bd9c38d
Fix push notifications for soft-deactivated users.
...
Previously, these push notification events were being generated, but
then ignored in handle_push_notification because there was no
user_message object.
2017-11-09 15:52:29 -08:00
derAnfaenger
3ac09b3e9b
queue processors: Add coverage for SlowQueryWorker.
2017-11-09 15:20:40 -08:00
Tim Abbott
64b4d83038
push_notifications: Improve debugging of lookup problems.
...
We're having this error being thrown often, and don't know why.
2017-11-09 15:20:24 -08:00
Steve Howell
531a3ee9de
refactor: Fix parse.quote(force_str(s)) calls in bugdown.
2017-11-09 10:43:20 -08:00
Steve Howell
786e90d774
Removed unused imports of force_bytes.
2017-11-09 10:32:14 -08:00
Steve Howell
50e3285a0d
tests: Remove force_text() in test_messages.py.
2017-11-09 10:27:30 -08:00
YJDave
de67bf81fd
org settings: Allow users to delete their message.
...
Fixes #7049 .
2017-11-09 10:20:34 -08:00
rht
5937141264
Remove usage of six.moves.string_types.
2017-11-09 10:00:00 -08:00
Harshit Bansal
65838bb825
email_gateway: Disable code block processor for email gateway.
...
Generally emails are not written with markdown in mind and hence
sometimes render in strange ways. This commit fixes a particular
issue that was causing whitespace before paragraphs to be treated
as code block due to which email content was being rendered in a
box that scrolls in right direction a lot.
Fixes : #7045 .
2017-11-09 09:56:35 -08:00
derAnfaenger
19bc55aa45
Fix various typos.
...
The typos and their corrections were found with the
aid of https://github.com/lucasdemarchi/codespell .
2017-11-09 16:26:38 +01:00