radio-t / rt-bot

Мета-репо для движения "создай своего бота"
129 stars 46 forks source link

Функциональные тесты для ботов в Travis CI #88

Closed selevit closed 7 years ago

selevit commented 7 years ago

Запилил функциональные тесты для ботов с поддержкой yaml-конфига для описания бота и его тест кейсов.

Пример конфига (bot-spec.yml) для карма-бота.

bot_name: "karma-bot"

defaults:
  username: "test-user"
  display_name: "Test User"

ignored_commands:
  - "Ignored message 1"
  - "Ignored message 2"
  - "Ignored message 3"

test_cases:
  - command: "/karma selevit"
    result: "^Карма пользователя @selevit: \\d+.$"

  - command: "selevit++"
    result: "^Карма пользователя @selevit увеличена \\(текущее значение: \\d+\\).$"

Для каждого бота в последующем нужно будет создать аналогичный файл. Позже я опишу более подробно формат и возможности конфига. Также, когда для всех ботов будут сделаны конфиги, можно будет запилить проверку наличия всех ботов в /list. А еще лучше, автоматически регистрировать бота при наличии конфига.