тестирование MQTT-поведения и событий - PullRequest
0 голосов
/ 24 августа 2018

Мне нужно проверить поведение MQTT и события, генерируемые MQTT.Например, всякий раз, когда я (фиктивное устройство) публикую публикацию в MQTT, обработчик вызывается им с действительными параметрами (проверял это с iex, но должен автоматизировать процесс), и я выполняю некоторые действия с данными.

Шаги:

  1. установлено mqqt через докер-контейнер
  2. добавлена ​​зависимость от черепахи для моего проекта эликсира
  3. и добавлен базовый список
  4. и попытался в консоли и успешно прослушал
Tortoise.publish(:client_id, "d", "my msg" , qos: 0).

Примечание: я пытался использовать библиотеки mock и mox для прослушивания, но не смог перехватить событие вызова

Вопрос/ issue: MQTT прослушивает события (некоторые устройства публикуют события на сервере MQTT), а MQTT вызывает связанный с ним слушатель эликсира.Мне нужно проверить это поведение: допустим, MQTT вызывает слушателя в течение 10 секунд.Как проверить внутри тестовых случаев, что этот метод / слушатель был вызван в течение 10 секунд (с правильными параметрами) после того, как я инициирую публикацию в MQTT

Library: https://github.com/gausby/tortoise

...