Commit graph

64 commits

Author SHA1 Message Date
neiljp (Neil Pilgrim) 4c8d86c1d9 bot lib tests: Move tests of bot library to tests/.
This makes it clearer which files are for writing bot tests
vs tests of the infrastructure.
2018-05-30 18:29:47 -07:00
Robert Hönig a8045a8fa9 mypy: Fix paths to chessbot files. 2018-05-28 13:43:15 +02:00
neiljp (Neil Pilgrim) 7dc0703397 tools: Move strict-optional to mypy.ini & remove option from run-mypy. 2018-04-06 13:45:11 -04:00
neiljp (Neil Pilgrim) 6cbe1f5ba7 tools: Migrate core run-mypy options to mypy.ini.
Add traceback option, as used in core Zulip run-mypy.
2018-04-06 13:45:11 -04:00
Rohitt Vashishtha e49ecfcd39 mypy: Support files without extensions for scripts in /tools.
This assumes that files passed in force_include without any extension are meant
to be run with mypy, and thus assumed to be python scripts.

Also, we ignore the most of the tools dir, except for the tools/deploy script
for which #349 adds type annotations.
2018-03-30 07:54:10 -04:00
Alena Volkova ea8393511a interactive bots: Create Front bot. 2018-03-08 07:38:35 -05:00
amanagr 5fda59dde0 Susi AI Bot: Create a susi ai bot.
This bot uses SUSI_SERVER API to get response.
2018-02-22 09:36:25 -05:00
Viraat Chandra b7b083f094 interactive bots: Add Trello Interactive Bot. 2018-02-16 09:54:55 -05:00
fredfishgames 3a438cafa9 zulip_bots: Migrate connect_four bot to new game_handler. 2018-01-22 11:30:31 -05:00
neiljp (Neil Pilgrim) 2366b22405 Tools: Update tools/run-mypy to default to strict-optional. 2018-01-08 15:39:03 -05:00
Xavier Cooney 1de704394a interactive bots: Create idonethis bot. 2018-01-08 10:46:52 +01:00
fredfishgames 08bfe9d8c7 interactive bots: Create Salesforce bot. 2018-01-02 14:00:41 -05:00
Viraat Chandra d62cc1ab58 update run-mypy: Add Baremetrics bot files. 2017-12-31 10:23:43 -05:00
Viraat Chandra a2557ccbe6 interactive bots: Create Mention bot. 2017-12-28 16:33:00 -05:00
neiljp (Neil Pilgrim) 134b94e630 requirements: Upgrade to mypy 0.560 & adjust generics flag.
This upgrades to the same mypy as zulip/zulip at this point.
2017-12-21 18:43:42 -05:00
Marco Burstein 878691a745 bots: Create Wit.ai Bot.
Wit.ai Bot communicates with the Wit.ai API. It can be configured with
any Wit.ai token and allows for setting up a custom handler function to
handle Wit.ai responses.
2017-12-18 10:32:05 -05:00
Marco Burstein e9aa94f81c mypy: Add annotations for Link Shortener Bot.
Based on work started by @skunkmb.
2017-12-12 13:57:55 -06:00
neiljp (Neil Pilgrim) 28687f18ca mypy: Add --disallow-any=generics & extend typing accordingly.
Also reset typing of ExternalBotHandler to Any after discussion.
2017-12-11 20:14:00 -06:00
fredfishgames 424a4bb631 add _ to googletranslate and googlesearch 2017-12-11 13:15:43 -06:00
fredfishgames 657c6d7b9c interactive bots: Create DialogFlow bot. 2017-12-11 13:15:43 -06:00
Rohitt Vashishtha e5e5868414 tests: Add test_helloworld to run-mypy list. 2017-12-11 11:43:44 -06:00
Marco Burstein 3c66894aff incrementor: Clean up type annotation/conversion.
This adds mypy annotations, and we also make the type
conversions in `handle_message` be a little more clear.

(@showell helped clean up this commit a bit)
2017-12-11 10:59:40 -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
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
Kai Chen d33e9b9d92 mypy: Add annotations for converter. 2017-12-10 04:59:27 -08:00
Sivagiri Visakan 381401b11b bots: Add mypy to youtube bot 2017-12-09 03:56:33 -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 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
Jerry Zhang 77e9be0783 bots/giphy: Use Python 3 type mypy annotations. 2017-12-07 00:22:57 -03:30
Jerry Zhang 95b8ea4751 bots/followup: Use Python 3 type mypy annotations. 2017-12-07 00:22:57 -03:30
Rohitt Vashishtha 69ad29faad tools: Allow force including files for mypy. 2017-12-04 07:27:20 -08:00
Steve Howell efeac92d42 Add tools/test-lib.
This starts to add direct test coverage on
zulip_bots/zulip_bots/lib.py.

It is not yet integrated into tools/test-main.
2017-11-29 13:45:51 -08:00
Steve Howell 80e4ef9f72 Create terminal.py to run bots in the terminal.
This program replaces zulip_bot_output.py, which had
gotten a little out of date.

It should be able to simulate a terminal conversation for
all of our bots, including those that use "advanced" features:

    third party config files: tested with giphy
    message updates: tested with incrementor
    storage: tested with virtual_fs and others
2017-11-28 10:52:13 -08:00
derAnfaenger 80534a50b6 zulip_bots: Add directory for unmaintained bots. 2017-11-02 15:15:47 +01:00
Tim Abbott 075e368818 run-mypy: Document why certain files are not mypy-checked. 2017-10-26 23:02:52 -07:00
Alena Volkova 25d6c68d4d mypy: zulip_botserver: Fix errors in setup.py. 2017-10-27 00:56:16 -04:00
Alena Volkova ed51cabf1b mypy: zulip_botserver: Fix errors in zulip_botserver/server.py. 2017-10-27 00:56:16 -04:00
Alena Volkova 81205ea813 mypy: zulip_botserver: Fix errors in tests/__init__.py. 2017-10-27 00:56:16 -04:00
Alena Volkova fd519252d6 mypy: zulip_bots: Fix errors in zulip_bots/zulip_bot_output.py. 2017-10-27 00:56:16 -04:00
Alena Volkova 5e7f4c595f mypy: zulip_bots: Annotate zulip_bots/test_run.py. 2017-10-27 00:56:16 -04:00
Alena Volkova afb9886553 mypy: zulip_bots: Fix errors in zulip_bots/test_lib.py. 2017-10-27 00:56:16 -04:00
Alena Volkova 6546917088 mypy: zulip_bots: Annotate zulip_bots/run.py. 2017-10-27 00:56:16 -04:00
Alena Volkova 47d8ab8f9a mypy: zulip_bots: Fix errors in zulip_bots/provision.py. 2017-10-27 00:56:15 -04:00
Alena Volkova 3a20dee621 mypy: zulip_bots: Fix errors in zulip_bots/lib.py. 2017-10-27 00:56:15 -04:00
Alena Volkova ad050fc806 mypy: zulip_bots: Fix errors in setup.py. 2017-10-27 00:56:15 -04:00