public async Task Handle_ShouldSendBusTopic()
        {
            // Arrange
            var objectGuid       = Guid.NewGuid();
            var plant            = "TestPlant";
            var ipoAcceptedEvent = new IpoAcceptedEvent(plant, objectGuid);

            // Act
            await _dut.Handle(ipoAcceptedEvent, default);

            // Assert
            _topicClient.Verify(t => t.SendAsync(It.IsAny <Message>()), Times.Once());
        }
        public void Handle_ShouldAddIpoAcceptedHistoryRecord()
        {
            // Arrange
            Assert.IsNull(_historyAdded);

            // Act
            var objectGuid = Guid.NewGuid();
            var plant      = "TestPlant";

            _dut.Handle(new IpoAcceptedEvent(plant, objectGuid), default);

            // Assert
            Assert.IsNotNull(_historyAdded);
            Assert.AreEqual(plant, _historyAdded.Plant);
            Assert.AreEqual(objectGuid, _historyAdded.ObjectGuid);
            Assert.IsNotNull(_historyAdded.Description);
            Assert.AreEqual(EventType.IpoAccepted, _historyAdded.EventType);
            Assert.AreEqual("IPO", _historyAdded.ObjectType);
        }