Merge remote-tracking branch 'origin/upnpservice_as_bean' into dev

This commit is contained in:
xis 2023-10-22 14:54:23 +02:00
commit f24c053b0b

View file

@ -8,6 +8,7 @@ import org.jupnp.model.message.header.STAllHeader
import org.jupnp.model.message.header.UpnpHeader
import org.jupnp.model.types.HostPort
import org.springframework.beans.factory.annotation.Autowired
import spock.util.concurrent.PollingConditions
import support.IntegrationSpecification
import support.beans.dlna.upnp.UpnpServiceConfigurationInt
@ -23,6 +24,7 @@ class DlnaServiceIntTest extends IntegrationSpecification {
private UpnpService upnpService
@Autowired
private MediaServer mediaServer
def conditions = new PollingConditions(timeout: 1)
def "should send initial multicast Upnp datagrams on start"() {
given:
@ -36,8 +38,9 @@ class DlnaServiceIntTest extends IntegrationSpecification {
sut.start()
then:
configuration.outgoingDatagramMessages.any()
configuration.outgoingDatagramMessages[0].class == OutgoingSearchRequest
conditions.eventually {
assert configuration.outgoingDatagramMessages.any()
assert configuration.outgoingDatagramMessages[0].class == OutgoingSearchRequest
with(configuration.outgoingDatagramMessages[0] as OutgoingSearchRequest) {
assert it.operation.method == MSEARCH
assert it.destinationAddress == InetAddress.getByName(IPV4_UPNP_MULTICAST_GROUP)
@ -48,6 +51,7 @@ class DlnaServiceIntTest extends IntegrationSpecification {
assert header(it, HOST, HostHeader.class) == new HostPort(IPV4_UPNP_MULTICAST_GROUP, UPNP_MULTICAST_PORT)
}
}
}
def <T> T header(OutgoingSearchRequest request, UpnpHeader.Type type, Class<? extends UpnpHeader<T>> clazz) {
return clazz.cast(request.headers.get(type).find()).value