Rohitt Vashishtha
fe78a363b0
bots: Do not remove self from list of recipients in group PMs.
...
The origin of this line seems like an arbitary decision when writing the
wikipedia bot in ad25f27853
. Removing self
doesn't have any other significance, and not making any changes to the
recipient list helps with https://github.com/zulip/zulip/issues/14228 .
Fixes #552 .
2020-04-28 11:56:16 -04:00
Eeshan Garg
1dac75f979
pypi: Release version 0.7.0.
2020-04-20 23:23:58 -02:30
Anders Kaseorg
17cf26aa1f
cleanup: Move line breaks before binary operators.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
6f40bcf745
cleanup: Fix whitespace around parameter equals.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
562fe610b7
cleanup: Fix whitespace around function annotation arrows.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
bd9bb0a4e8
cleanup: Fix indentation.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
07c64673f7
test_jira: Remove redefined test_edit method.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
a01e5e37f4
cleanup: Remove more unused variables.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
54b2578204
cleanup: Remove unused variables.
...
Generated by autoflake.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
f5d96dbcce
cleanup: Remove duplicate imports.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
adde59e5c3
cleanup: Remove more unused imports.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
2f6623bbc4
cleanup: Remove unused imports.
...
Generated by autoflake.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
64d2f5ac32
test_connect_four: Expand star import.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
5428c5f296
typing: Convert function type annotations to Python 3 style.
...
Generated by com2ann (slightly patched to avoid also converting
assignment type annotations, which require Python 3.6), followed by
some manual whitespace adjustment, and two fixes for use-before-define
issues:
- def set_zulip_client(self, zulipToJabberClient: ZulipToJabberBot) -> None:
+ def set_zulip_client(self, zulipToJabberClient: 'ZulipToJabberBot') -> None:
-def init_from_options(options: Any, client: Optional[str] = None) -> Client:
+def init_from_options(options: Any, client: Optional[str] = None) -> 'Client':
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
7c5f73dce9
salesforce: Add missing typing import.
2020-04-18 20:31:14 -07:00
Anders Kaseorg
fe72f3b131
typing: Remove ‘if False’ guard for typing imports.
...
typing is in the Python 3.5 standard library.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
1a417b1610
finder: Remove ModuleNotFoundError handler.
...
ModuleNotFoundError is a subclass of ImportError, which is handled on
the previous line; furthermore, it doesn’t exist in Python 3.5.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:20:53 -07:00
Anders Kaseorg
d68437d5f5
Rewrite some strings using raw string syntax.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 15:04:36 -07:00
Anders Kaseorg
e30b3b094b
Modernize legacy Python 2 syntax with pyupgrade.
...
Generated by `pyupgrade --py3-plus --keep-percent-format` followed by
manual indentation fixes.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 15:04:36 -07:00
Eeshan Garg
dd201926fa
pypi_packages: Use README files for long descriptions.
2020-04-16 19:35:54 -07:00
Eeshan Garg
c55bf78c6b
pypi: Specify the correct license classifier for all packages.
2020-04-16 19:35:54 -07:00
Steve Howell
2ec5bb7b70
minor: Warn about missing usage handlers.
2020-04-05 06:53:40 -04:00
rht
4600ce59a3
Remove all remaining from __future__ imports.
2020-04-03 08:18:08 -04:00
Steve Howell
754a9f7880
bots: Remove unmaintained bots.
2020-04-01 08:41:51 -04:00
fishfred
87b57f879c
bots: Fixed incorrect computer play message
2020-03-30 12:02:32 -04:00
fishfred
0a0f9e9d21
bots: Fix tictactoe, connect_four emoji
2020-03-30 12:02:32 -04:00
Eeshan Garg
ce73dab121
pypi: Release version 0.6.4.
2020-03-26 19:52:46 -02:30
Eeshan Garg
0b930cfe86
pypi: Add support for Python 3.8.
2020-03-26 13:38:08 -07:00
neiljp (Neil Pilgrim)
357a5e06f3
mypy: Clarify type hints in zulip_bots/.
2020-03-24 21:25:45 -07:00
orientor
62555f97a0
Bots: Update Owlbot from v1 to v2.
2020-03-04 13:12:29 -08:00
Aman
264632230b
lint: Remove trailing whitespace from json files.
2020-01-14 16:00:24 -08:00
Eeshan Garg
957b5e7ad8
pypi: Release version 0.6.3.
2019-12-16 11:48:56 -03:30
Eeshan Garg
efcc89da9d
pypi: Release version 0.6.2.
2019-12-14 16:38:48 -03:30
neiljp (Neil Pilgrim)
0427d962b0
setup.py: Add supported python versions for all packages.
2019-09-03 13:28:32 -07:00
Anders Kaseorg
c6a52d798e
zulip_bots, zulip_botserver: Add PEP 561 type annotation markers.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-08-09 17:29:04 -07:00
neiljp (Neil Pilgrim)
725c7574a5
bots: Use ImportError in Python<3.6 for failed import of bot by name.
...
This previously caused a traceback if the bot couldn't be found.
2019-07-27 16:38:23 -07:00
Eeshan Garg
e5bcd095fd
pypi: Release version 0.6.1.
2019-07-14 21:17:53 -02:30
Alexandra Ciobica
ca1b415a1b
docs: Change integration docs so that all the pages from portico/integrations look the same.
2019-07-13 11:08:22 -07:00
Sheehan Khan
0e8347d440
bot tests: Improve test coverage for TicTacToeModel.
...
This commit improves test coverage of from 41.66% to 50%.
This commit is related to #417
2019-04-21 20:09:44 -02:30
Eeshan Garg
accfa8ddaf
pypi: Release version 0.6.0.
2019-03-19 19:43:23 -02:30
Eeshan Garg
d43b9328f0
pypi: Release version 0.5.9.
2019-02-17 02:49:27 -03:30
Rohitt Vashishtha
be4f9a0c32
bots: Use bold formatting judiciously in trivia bot.
2019-01-30 08:38:10 -08:00
Rohitt Vashishtha
49d3f4cfbb
bots: Make trivia bot responses mention currently interacting user.
2019-01-29 11:39:33 -08:00
Eeshan Garg
9931de2c6b
pypi: Release version 0.5.8.
2019-01-22 22:35:37 -03:30
Eeshan Garg
ed6c797d19
pypi: Release version 0.5.7.
2019-01-16 20:50:46 -03:30
Eeshan Garg
d478c91965
pypi: Release version 0.5.6.
2018-12-17 17:07:32 -03:30
Marco Burstein
d176fbe324
bots: Fix a Chessbot dependency error.
...
Specify a version for Chessbot so that it will continue to function
properly if the library is updated. Also, update `test-bots` to remove
a temporary fix for Chessbot.
2018-12-09 18:57:10 -08:00
Steve Howell
0fd093a698
bots: Allow users to supply ZULIP_API_KEY, etc.
...
This will make it easier to run standalone
bots in containers like Heroku that prefer
env-var-style configuration.
For now this is undocumented, but we should
update the server docs once a few folks have
tried it out.
(The history behind requiring the config file
is that I wanted to keep things simple and
be strongly opinionated about how you run
bots, so that the docs didn't overwhelm folks,
but this use case has come up more frequently.)
2018-12-09 11:16:30 -08:00
Steve Howell
3d68e394dc
bots: Raise KeyError inside storage.get().
...
Our bots rely on get() raising `KeyError` if
a key does not exist.
This was a regression in this commit:
d7d2f6bbd6
2018-12-09 11:16:30 -08:00
Rohitt Vashishtha
fbe99b812e
lib: Add support for extended mention syntax.
...
We are checking for the extended syntax only on the basis of the
user id so that we can handle cases where a bot is renamed.
2018-11-06 17:14:13 -08:00
Steve Howell
4d03ab0558
Add incident bot.
...
This is a pretty alpha proof-of-concept.
2018-10-11 10:36:00 -04:00
Eeshan Garg
09deda9466
pypi: Release version 0.5.5.
2018-09-25 22:36:57 -02:30
Eeshan Garg
048fa79a7c
pypi: Release version 0.5.4.
...
Starting now, we now also have a CHANGELOG to record major changes
to the zulip package.
2018-08-31 17:25:55 -02:30
Eeshan Garg
6151f2db40
pypi: Release version 0.5.3.
2018-08-17 22:21:01 -02:30
neiljp (Neil Pilgrim)
617e16cebb
bridges: Bring inter-realm (zulip) bridge into zulip/ & rename others.
2018-08-08 17:26:15 -07:00
Eeshan Garg
1127f973aa
pypi: Release version 0.5.2.
2018-07-26 21:19:12 -02:30
John Pellman
91b570aca8
jira: Fix JSON post requests for create and edit commands.
2018-07-23 08:06:00 -07:00
Jordan Troutman
ab97b37ce1
merels tests: Adapt merels tests to game_handler.
...
The merels bot was ported to game_handler, but the tests
were not updated. Most changes are minimal, but require
changing how to start a game. It is unclear if the
merels start game was properly updated.
Author: Jordan Troutman <jttroutman99@gmail.com>
2018-07-09 11:03:15 -04:00
Eeshan Garg
c2fdd547f7
PyPI: Release 0.5.1.
2018-07-01 12:05:59 -02:30
novokrest
3448d9c9c1
zulip-run-bot: Add the ability to run a bot by the module name.
2018-07-01 08:08:02 -04:00
novokrest
f4bea72557
youtube: Add test for unknown error during initialize
.
2018-07-01 08:03:56 -04:00
novokrest
5eef519b3b
giphy: Add test for connection error during config validation.
2018-07-01 08:02:59 -04:00
Shubham Dhama
918e63a220
zulip_bots: Fix get_storage request arguments in StateHandler.
2018-07-01 08:01:18 -04:00
Shubham Dhama
88b649d689
test_lib: Fix repeated name of test_state_handler.
2018-07-01 08:01:18 -04:00
novokrest
7fc1ff5e0e
bots: Add bot for uploading files to Zulip server.
...
Add file_uploader bot as an example of using
ExternalBotHandler's methods for uploading files
to Zulip server.
2018-07-01 07:57:45 -04:00
novokrest
e5239c5c54
lib: Add ExternalBotHandler methods for file uploading.
...
Add methods ExternalBotHandler.upload_file() and
ExternalBotHandler.upload_file_from_path() for uploading
local files to Zulip server.
Fixes #351
2018-07-01 07:57:45 -04:00
novokrest
935701aea2
flock: Add test for connection error during message sending.
2018-07-01 07:55:36 -04:00
novokrest
0fec20239d
flock: Fix error message for invalid user.
2018-07-01 07:55:36 -04:00
novokrest
7b3c083ab5
flock: Refactor test_no_recipient_found
test to increase coverage.
2018-07-01 07:55:36 -04:00
novokrest
80adce3cee
flock: Change name of var res
to users
in get_recipient_id
method.
2018-07-01 07:55:36 -04:00
novokrest
7fe37dbfe8
flock: Move calling requests to flock's urls to separate method.
...
Introduce `make_flock_request()` method to make requests to flock's URLs.
2018-07-01 07:55:36 -04:00
novokrest
efdc96929f
flock: Change returned type of get_recipient_id
to tuple (userId, error).
2018-07-01 07:55:36 -04:00
novokrest
c2a3d4c517
flock: Rename method find_recipient
to find_recipient_id
.
2018-07-01 07:55:36 -04:00
novokrest
0a7a06f028
flock: Rename local var to
to recipient_name
in find_recipient
method.
2018-07-01 07:55:36 -04:00
novokrest
d24e4fc5c8
flock: Pass recipient's name as first argument in get_recipient_id
method.
2018-07-01 07:55:36 -04:00
novokrest
5c46a4e68e
flock: Rename local var to
to recipient_id
in get_flock_response()
.
2018-07-01 07:55:36 -04:00
novokrest
a17bd77b71
jira: Build request's data as dictionary to create/edit issues.
...
Build data in `make_create_json` and `make_edit_json` methods
as dictionary to send as JSON payload.
2018-07-01 07:54:28 -04:00
novokrest
24a157cd37
jira: Refactor old tests to use mock_http_conversation
.
2018-07-01 07:54:28 -04:00
novokrest
6332ce47cb
jira: Add tests for error cases and help
command.
2018-07-01 07:54:28 -04:00
novokrest
914583e8f7
request_test_lib: Add mocking PUT requests.
2018-07-01 07:54:28 -04:00
Kishan Patel
ea370031ee
tictactoe: Add tests for TicTacToeModel functions.
...
Encountered several issues with test cases initially,
where test cases were failing due to the structure of the tests
within the file. This was circumvented by creating a separate
instance of the class TicTacToeModel for each test case
in order to focus on unit testing. There might be an issue with
the _get_game_handlers() function at the end of the file
which is used to obtain the model and message information,
it seems to be getting the entire class TicTacToeModel instead of
creating an instance of the class. Overall, this commit focuses
on creating a precedent for writing test cases involving TicTacToeModel,
and implements basic cases which can be extended to larger
edge cases in the future. Testing was done locally by running
./tools/test-bots until we were able to get the response 'ok' for
all the test cases written. We also used coverage in order to test the
coverage of the cases. While we were not able to increase
the coverage as much as we would have liked, we were able to
identify several issues and fix them, hopefully making it easier
for future contributors to add additional test cases to TicTacToeModel.
Overall, we would like special attention given to the way
that TicTacToeModel() was initailized in these tests and whether or not
this is a scalable precedent for future tests.
Fixes : #122
2018-06-28 14:43:29 -04:00
novokrest
aa6afbd2fe
front: Add helper func to test command's error.
2018-06-25 08:14:14 -04:00
novokrest
0d3189b3b0
front: Fix status and body of response in fixtures for successful requests.
2018-06-25 08:14:14 -04:00
novokrest
100d50411f
front: Add tests when command's request was failed.
2018-06-25 08:14:14 -04:00
Sivagiri Visakan
3e20593da2
bots/finder: Make name
a non-default parameter in import_module_from_source.
2018-06-22 07:59:56 -04:00
Sivagiri Visakan
09a7894a34
bots: Extract path resolution logic into a function.
2018-06-22 07:59:56 -04:00
Sivagiri Visakan
d053528925
bots: Move import_module_from_source to finder.py.
2018-06-22 07:59:56 -04:00
Rhea Parekh
b28cfcac3d
bots: Improve response at 3 wrong answers in trivia bot.
2018-06-12 13:00:43 -04:00
Rhea Parekh
f25772d1dc
bots: Increase test coverage for trivia_quiz bot.
2018-06-11 20:01:41 -04:00
Rhea Parekh
7e8deac8e0
bots: Add type annotations for trivia_quiz bot.
2018-06-11 20:01:41 -04:00
Rhea Parekh
ba98220d44
bots: minor cleanup for trivia_quiz bot.
2018-06-11 20:01:41 -04:00
neiljp (Neil Pilgrim)
0ea49c96ed
bot tests: import patch in incrementor & monkeytestit as in other tests.
...
This makes the code more compact and consistent.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
cd76a3cf5a
mypy: Improve typing of dialogflow and salesforce tests.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
509991f26f
bot tests: Remove unnecessary imports.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
031510410b
xkcd tests: Use consistent imports.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
5d211b0c84
monkeytestit tests: Use unittest.skipIf to disable tests on python < 3.5.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
4900099763
merels test: Rename test & improve style.
2018-06-11 08:16:43 -04:00
neiljp (Neil Pilgrim)
6cdb83ce72
bot tests: Adjust TestCase inheritance to avoid need to skip/filter.
...
Previously the test-bots script filtered out base-class tests from
BotTestCase. With this change, BotTestCase continues to inherit from
unittest.TestCase, but the default test_* methods previously in this
class are now in a new DefaultTests class, which does not. Instead, each
bot needs to inherit from BotTestCase and DefaultTests *explicitly*.
This avoids the need to filter out the base-class tests, which
simplifies the test-bots script, and may ease any migration to eg.
pytest.
The DefaultTests class does require some non-implemented methods which
BotTestCase provides.
2018-06-09 12:49:49 -04:00
Eeshan Garg
c636a5ac49
pypi: Release 0.5.0.
2018-06-07 12:05:18 -02:30
Eeshan Garg
26bd90b260
zulip_bots: Display neat error message for missing bot dependencies.
...
We just moved the logic for installing bot dependencies from setup.py
to tools/provision. So bot dependencies are not automatically installed
anymore as a part of the base package. Now, if there is an import error
caused by missing dependency, we display a neat error message asking
the user to provision bot dependencies.
2018-06-06 13:23:16 -07:00