作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在集成测试一个使用 RabbitMQ 客户端(amqp-client 版本 5.7.0)和嵌入式 Apache Qpid 服务器对象的组件。
调用Channel.queuePurge()
方法时,队列将被清除。我可以使用 getMessageCount()
方法验证这一点。但 queuePurge()
方法返回一个 PurgeOk
对象,该对象的消息计数始终为 0。文档称 PurgeOK
返回已清除的消息计数。
//The queue has 1 message.
int f = getMessageCount();
//verify message count
assertEquals(f, 1);
//purge
com.rabbitmq.client.AMQP.Queue.PurgeOk purgeOK= channel.queuePurge(queueName);
//the next test fails.
//Shouldn't the purgeOK have count 1, to denote that one message was purged?
assertEquals(purgeOK.getMessageCount(), 1);
只有在使用嵌入式 Qpid 服务器进行测试时才会发生这种情况。与 Rabbit MQ 的实际运行实例相同的测试用例给出了预期的结果。
这是一个已知问题吗?有没有更好的方法来对清除功能进行单元测试?
最佳答案
这不是一个已知问题,我已提出an issue针对 Qpid Broker-J 中的此缺陷。感谢您帮助发现这一点。
关于java - 在 Qpid 上调用的 RabbitMQ Java API queuePurge() 方法返回消息计数为零的 PurgeOK 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56264607/
我正在集成测试一个使用 RabbitMQ 客户端(amqp-client 版本 5.7.0)和嵌入式 Apache Qpid 服务器对象的组件。 调用Channel.queuePurge()方法时,队
我是一名优秀的程序员,十分优秀!