From 54c8b28e0033c1d8bf95227af95fe81155b41c4a Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Sat, 28 Dec 2024 15:32:03 +0400 Subject: [PATCH] Add MQTTClient.PublishSynced (#21) --- mqtt.go | 1 + testutils/fake_mqtt.go | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/mqtt.go b/mqtt.go index 0bbe014..98183e1 100644 --- a/mqtt.go +++ b/mqtt.go @@ -23,6 +23,7 @@ type MQTTClient interface { Start() Stop() Publish(message MQTTMessage) + PublishSynced(message MQTTMessage) Subscribe(callback MQTTMessageHandler, topics ...string) Unsubscribe(topics ...string) } diff --git a/testutils/fake_mqtt.go b/testutils/fake_mqtt.go index 16e9bcd..7c30807 100644 --- a/testutils/fake_mqtt.go +++ b/testutils/fake_mqtt.go @@ -296,6 +296,11 @@ func (client *FakeMQTTClient) Publish(message wbgong.MQTTMessage) { client.broker.Publish(client.id, message) } +func (client *FakeMQTTClient) PublishSynced(message wbgong.MQTTMessage) { + client.ensureStarted() + client.broker.Publish(client.id, message) +} + func (client *FakeMQTTClient) Subscribe(callback wbgong.MQTTMessageHandler, topics ...string) { client.Lock() defer client.Unlock()