public void TestBufferRawMessage() { var queueMock = new Mock <IQueuable>(); queueMock.Setup(x => x.Push(It.IsAny <InsertionModel>())).Callback <InsertionModel>(x => _output.WriteLine($"successfully pushed {x.ActivityType} to queue")) .Verifiable(); var dataMock = new Mock <IData>(); dataMock.Setup(x => x.Save(It.IsAny <LogEntity>())) .Callback <LogEntity>(x => _output.WriteLine($"successfully wrote {x.ActivityId} to database")) .Verifiable(); var messageHandler = new MessageHandler(queueMock.Object, dataMock.Object); messageHandler.BufferRawMessage(":eggplant:"); queueMock.Verify(x => x.Push(It.IsAny <InsertionModel>()), Times.Once()); }