我有一个以SMTP端点结尾的子流。我已经使用 MUnit 模拟了 smtp:outbound-endpoint,以验证在给定流输入的情况下是否按预期指定了属性。
但我无法验证的一件事是内容类型/MIME 类型。此属性在关联的连接器上设置。但是,似乎不可能将连接器模拟为消息处理器。
如何验证 smtp:connector 上的 mimeType 是否设置为某个值?
例如(下面),如果我的 xml 在配置下面的 contentType 时名称无效,我该如何编写测试来防止它:
<smtp:connector name="smtpConnector" doc:name="SMTP" contentType="#[flowVars.someInvalidName]"/>
您可以使用:
String contentTypeInbound = message.getProperty("content-type", PropertyScope.INBOUND);
MimeType mt = new MimeType(contentTypeInbound);
String mimeType = mt.getPrimaryType() + "/" + mt.getSubType();
assertEquals(expectedMimeType, mimeType);
希望对您有所帮助。