Steve Howell
fb8ee29bc1
zulip_bots/test_lib.py: Remove unneeded imports/shebang.
2017-12-11 08:26:50 -06:00
Steve Howell
b4705c2343
bot tests: Remove BotTestCase.
...
All of the functionality of BotTestCase was either directly
moved to StubBotTestCase or replaced by similar functions,
and all bots have been ported to StubBotTestCase.
2017-12-11 08:26:50 -06:00
sColin16
6109bd198a
interactive bots: Improve wikipedia bot.
2017-12-11 08:05:09 -06:00
sColin16
1221c7107f
test_lib.py: Add mock_request_exception.
2017-12-11 08:05:09 -06:00
Steve Howell
0a05a28e34
test_virtual_fs.py: Use StubBotTestCase.
...
We use verify_dialog() now, and we also have a different
default email.
2017-12-11 08:00:02 -06:00
Steve Howell
a7f6c0f142
Add display_recipient to StubBotTestCase.verify_dialog.
2017-12-11 07:57:36 -06:00
Marco Burstein
3c794b384b
mypy: Add annotations for Yoda Bot.
2017-12-11 07:33:16 -06:00
Marco Burstein
8f64405bae
mypy: Add annotations for Wikipedia Bot.
2017-12-11 07:26:43 -06:00
Marco Burstein
0467f83314
mypy: Add annotations for xkcd Bot.
2017-12-11 07:26:43 -06:00
neiljp (Neil Pilgrim)
e01ecc9fde
test_virtual_fs.py: Remove unneeded imports and shebang.
2017-12-11 07:16:54 -06:00
neiljp (Neil Pilgrim)
060211a131
bots: Simplify test_yoda.py.
2017-12-10 18:16:40 -08:00
neiljp (Neil Pilgrim)
20cb236fdd
bots: Simplify test_weather.py.
2017-12-10 18:16:27 -08:00
neiljp (Neil Pilgrim)
84d92337be
bots: Simplify test_googletranslate.py.
...
Also add sender_full_name parameter in StubBotTestCase.verify_reply().
2017-12-10 16:26:03 -08:00
neiljp (Neil Pilgrim)
c8824cb2e5
bots: Simplify test_link_shortener.py.
2017-12-10 14:04:00 -08:00
Steve Howell
f8cefc5352
minor: Fix imports in test_xkcd.py.
...
We no longer need the `future` imports and we can
use `StubBotTestCase` now.
2017-12-10 09:25:12 -06:00
Marco Burstein
700ce6a673
bots: Create Chess Bot.
...
Chess Bot is a bot that allows you to play chess against either another
user or the computer. Use `start with other user` or
`start as <color> with computer` to start a game.
In order to play against a computer, `chess.conf` must be set with the
key `stockfish_location` set to the location of the Stockfish program on
this computer.
Use `bot_handler.storage` to preserve game state across messages.
(@showell also did minor work here to have the test use verify_dialog()
and have the bot respond to empty messages)
2017-12-10 09:14:32 -06:00
Steve Howell
2fa677a3e0
bot tests: Extract StubBotTestCase._get_handlers().
...
This is mostly a pure refactoring, but it also ensures
that `initialize` is called in a consistent way by most
of our test helpers. (This didn't cause problems before,
since some bots don't require initialization.)
2017-12-10 06:35:51 -08:00
Steve Howell
01f8366bea
Improve test_bot_responds_to_empty_message().
...
This fixes the TODO of inlining get_response(), and it
makes a slightly tighter assertion about the response.
2017-12-10 06:20:19 -08:00
Nikhil Mishra
81b207795f
followup bot: Fix help response and configure streams.
...
From @showell:
We had a PR here with lots going on, and the commits weren't
very well organized, and then there were some tricky merge
conflicts from another PR. So I just squashed them all into
one commit.
What this does:
* allow you to configure your followup stream
* provide help in followup stream
* add more testing to followup stream
* add get_response() helper for tests
Fixes #173
Fixes #174
2017-12-10 05:23:35 -08:00
Kai Chen
1cdb0bffe6
mypy: Add annotations for encrypt.
2017-12-10 04:59:27 -08:00
Kai Chen
b382eacd18
mypy: Add annotations for define.
2017-12-10 04:59:27 -08:00
Kai Chen
d33e9b9d92
mypy: Add annotations for converter.
2017-12-10 04:59:27 -08:00
neiljp (Neil Pilgrim)
31853cfa80
Add test_bot_responds_to_empty_message to StubBotTestCase.
2017-12-09 15:06:41 -08:00
Sivagiri Visakan
6f9d010ed3
bots: Refactor Youtube bot.
2017-12-09 03:56:33 -08:00
Ivche1337
f947ff44f8
wikipedia bot: Return up to three links from wikipedia for keyword.
...
This change includes updates to the docs and tests as well.
2017-12-08 16:40:16 -08:00
Ivche1337
2597de87ef
wikipedia bot: Fix page-not-found error.
2017-12-08 16:40:16 -08:00
fredfishgames
ab9128d939
mypy: Add annotations for weather.
2017-12-08 14:55:35 -08:00
fredfishgames
f7f54d159f
mypy: Add annotations for virtual_fs.
2017-12-08 14:55:35 -08:00
fredfishgames
a7f9c6e743
Fixed giphy warning message in bot tests
2017-12-08 14:52:44 -08:00
fredfishgames
a026c48278
Added more googlesearch tests
2017-12-08 14:52:44 -08:00
fredfishgames
841efcde80
Added too many argument test for googletranslate bot.
2017-12-08 14:52:44 -08:00
neiljp (Neil Pilgrim)
d4284f88f9
XKCD: Adjust tests to use loops, inline responses, remove comments.
2017-12-08 11:21:02 -08:00
neiljp (Neil Pilgrim)
d97401df86
XKCD: Migrate tests to use verify_reply.
2017-12-08 11:21:02 -08:00
neiljp (Neil Pilgrim)
6c7a03e37a
XKCD: Split single test into multiple tests.
2017-12-08 11:21:02 -08:00
fredfishgames
9492495f4b
Removed self: Any from googlesearch
2017-12-08 10:48:42 -08:00
Steve Howell
cb849611c8
bot tests: Add sender_full_name to verify_dialog.
2017-12-08 08:51:57 -08:00
fredfishgames
4c4a60d90f
Remove self: Any
mypy annotations
2017-12-08 08:46:21 -08:00
Steve Howell
5f70e17259
bots: Simplify test_github_details.py.
2017-12-07 20:15:33 -08:00
Steve Howell
f421e90a64
bots: Simplify test_encrpyt.py.
2017-12-07 20:15:33 -08:00
Steve Howell
7285affbc4
bots: Simplify test_define.py.
2017-12-07 20:15:33 -08:00
Steve Howell
2c42b0e42e
minor: Clean up test_converter.py.
...
This removes some imports and uses StubBotTestCase
and verify_dialog.
2017-12-07 20:15:33 -08:00
Steve Howell
6f0d5239e8
test_googlesearch: Remove self: Any
annotations.
...
We can avoid `Any` annotations for `self`, since it is more
noise than signal and since the type of self is already
implicit from how Python classes work.
2017-12-07 19:40:32 -08:00
Steve Howell
011095018b
Simplify TestGoogleSearchBot.
...
We use verify_reply() for all the tests and de-duplicate
help_message by just having a single test validate both
the '' and 'help' inputs.
2017-12-07 19:40:32 -08:00
Steve Howell
c01fbe02e1
Remove unneeded imports in test_googlesearch.py.
2017-12-07 19:40:32 -08:00
fredfishgames
9d5fbc2b5b
mypy: Add annotations for help.
2017-12-07 19:12:39 -08:00
fredfishgames
40c09b4b16
mypy: Add annotations for googlesearch.
2017-12-07 19:12:39 -08:00
fredfishgames
b7dbe7af41
mypy: Add annotations for github_detail.
2017-12-07 19:12:39 -08:00
fredfishgames
1b16b54780
interactive bots: Create googletranslate bot.
2017-12-07 06:18:01 -08:00
Steve Howell
7a963916f2
bot tests: Use StubBotTestCase in test_giphy.py.
...
For three of the tests we use the simpler verify_reply()
API. For the 403 test, we don't need to rely on setUp
any more to simulate everything for us, and we do more
surgical patching.
2017-12-06 20:29:36 -08:00
Steve Howell
87662da139
bot tests: Add StubBotTestCase.mock_config_info().
...
We now auto-initialize bots in verify_reply() and have
a mock_config_info() helper that can override the new
StubBotHandler.get_config_info().
2017-12-06 20:29:36 -08:00