Zulip 服务器和 Web 应用程序。开源团队聊天可帮助团队保持高效和专注。
Go to file
sahil839 683b6f7d65 tests: Refactor test_can_create_streams and test_can_subscribe_other_users.
We refactor test_can_create_streams and test_can_subscribe_other_users
in test_subs.py. We want to follow a specific order in such tests
which is just set the policy value one by one and then checking
that the role in policy returns true and role just below that returns
false. This approach is explained in detail below.

Following hierarchy of roles is considered for these tests -
1. Realm admin
2. Full members
3. Members
4. Guests.

Then if the policy is set to admins only, we check that the having
role as admin returns true and the role just below that, i.e. full
member returns false. Similarly, if the policy is set to members
only, we check that a member should return true and role below it
which is guest should return false. We basically follow these as
we can assume that if a user with particular role cannot do the
required task, then user with role below in the hierarchy would
be not allowed to do the task too.

This commit refactors the above mentioned two tests to have above
explained workflow.
2021-03-24 12:33:58 -07:00
.github ci: Remove CircleCI workaround for buggy CPU count allocation. 2021-03-16 15:11:26 -07:00
.tx cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
analytics tests: Don't harcode email addresses in analytics.tests.test_views. 2021-03-22 18:10:03 -07:00
confirmation python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
corporate tests: Use do_create_realm where possible. 2021-03-14 08:50:02 -07:00
docs docs: Identify WSL 2 with normal capitalization. 2021-03-23 17:12:50 -07:00
frontend_tests refactor: Extract color_class module. 2021-03-24 12:22:27 -07:00
locale i18n: Update translation data from Transifex. 2021-03-22 19:37:20 -07:00
pgroonga python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
puppet puppet: Reformat custom Ruby modules with Rufo. 2021-03-24 12:12:04 -07:00
requirements requirements: Upgrade talon fork to 1.4.8. 2021-03-18 17:10:18 -07:00
scripts provision: Upgrade support for Fedora to version 33. 2021-03-22 19:34:18 -07:00
static refactor: Extract color_class module. 2021-03-24 12:22:27 -07:00
stubs requirements: Upgrade mypy to 0.790. 2020-11-12 15:44:30 -08:00
templates popovers: Change "Delete all messages in topic" to "Delete topic". 2021-03-23 15:46:00 -07:00
tools zanitizer: Reformat with perltidy. 2021-03-24 12:12:04 -07:00
var/puppeteer puppeteer_tests: Port to TypeScript. 2021-02-22 16:03:10 -08:00
zerver tests: Refactor test_can_create_streams and test_can_subscribe_other_users. 2021-03-24 12:33:58 -07:00
zilencer tests: Use do_create_realm where possible. 2021-03-14 08:50:02 -07:00
zproject ldap: Add option to limit user access to certain realms. 2021-03-18 11:19:59 -07:00
zthumbor python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
.browserslistrc browserslist: Drop 0.2% usage threshold to 0.15%. 2020-09-28 10:57:49 -07:00
.codecov.yml codecov: Change threshold to use percentage syntax. 2019-07-20 14:37:04 -07:00
.editorconfig lint: Add shfmt as a linter. 2020-10-15 15:16:00 -07:00
.eslintignore gitignore: Ignore zulip-thumbor-venv. 2021-03-04 18:06:21 -08:00
.eslintrc.json eslint: Forbid CommonJS variables in ES6 modules. 2021-03-23 01:42:43 -07:00
.gitattributes Revert "gitattributes: Mark yarn.lock as "binary", i.e. suppress diffs." 2019-05-20 19:31:14 -07:00
.gitignore ci: Use general terms for CircleCI. 2021-03-16 14:56:43 -07:00
.gitlint lint: Re-enable imperative-mood checking. 2021-02-23 14:54:07 -08:00
.mailmap mailmap: Give priority to Vishnu KS's zulip email. 2020-07-31 10:37:49 -07:00
.npmignore Add proxy notes to new README.dev.md troubleshooting section. 2016-03-29 21:54:05 -07:00
.prettierignore lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
.pyre_configuration pysa: Update .pyre_configuration to point to typeshed. 2020-09-22 15:44:47 -07:00
.sonarcloud.properties tools: Configure Zulip to be scannable by SonarCloud. 2020-06-24 12:41:17 -07:00
.yarnrc .yarnrc: Set ignore-scripts true. 2019-08-28 16:15:54 -07:00
babel.config.js babel: Specify core-js minor version. 2020-10-05 14:51:03 -07:00
CODE_OF_CONDUCT.md docs: Fix various capitalization errors. 2020-08-11 10:25:52 -07:00
CONTRIBUTING.md docs: Mention GitHub sponsors in contributing guide. 2021-03-23 15:57:25 -07:00
Dockerfile-postgresql docs: Standardize on PostgreSQL, not Postgres. 2020-10-28 11:55:16 -07:00
LICENSE license: Move copyright notice from LICENSE to NOTICE. 2021-02-05 09:28:12 -08:00
manage.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
mypy.ini markdown: Re-enable typeshed stub for Python-Markdown. 2021-03-10 11:49:59 -08:00
NOTICE docs: Bump copyright year. 2021-02-05 09:28:15 -08:00
package.json zjsunit: Lift restriction against mocking third party modules. 2021-03-12 10:06:30 -08:00
postcss.config.js styles: Use range context queries to eliminate *_max variables. 2021-02-05 09:23:59 -08:00
prettier.config.js casper: Remove few traces of casper. 2020-08-30 17:16:02 -07:00
pyproject.toml isort: Move configuration into pyproject.toml. 2021-03-04 18:03:30 -08:00
README.md readme: Add GitHub sponsors badge in README. 2021-03-23 15:56:46 -07:00
SECURITY.md docs: Fix more capitalization issues. 2020-10-23 11:46:55 -07:00
setup.cfg pycodestyle: Improve comments documenting excludes. 2021-02-12 13:11:25 -08:00
stylelint.config.js dependencies: Upgrade JavaScript dependencies. 2020-09-02 19:34:37 -07:00
tsconfig.json dependencies: Add ts-node. 2021-02-22 16:03:10 -08:00
Vagrantfile Vagrantfile: Reformat with Rufo. 2021-03-24 12:12:04 -07:00
version.py message: Record whether unread_msgs data is truncated. 2021-03-21 19:48:13 -07:00
webpack.config.ts webpack: Prevent Emacs file locks from crashing webpack-dev-server. 2021-03-11 13:31:30 -08:00
yarn.lock zjsunit: Lift restriction against mocking third party modules. 2021-03-12 10:06:30 -08:00

Zulip overview

Zulip is a powerful, open source group chat application that combines the immediacy of real-time chat with the productivity benefits of threaded conversations. Zulip is used by open source projects, Fortune 500 companies, large standards bodies, and others who need a real-time chat system that allows users to easily process hundreds or thousands of messages a day. With over 700 contributors merging over 500 commits a month, Zulip is also the largest and fastest growing open source group chat project.

GitHub Actions build status coverage status Mypy coverage code style: black code style: prettier GitHub release docs Zulip chat Twitter GitHub Sponsors

Getting started

Click on the appropriate link below. If nothing seems to apply, join us on the Zulip community server and tell us what's up!

You might be interested in:

You may also be interested in reading our blog or following us on Twitter. Zulip is distributed under the Apache 2.0 license.