Merge "Add CTS for verifying non-ASCII characters on NsdService" am: 85cc09b6b4

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2062168

Change-Id: Ib3c19fc732232a8f0ecee065fce31a105b46065d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot 2022-05-17 07:19:19 +00:00 • committed by Automerger Merge Worker
commit 41f72e0235

View file

@ -608,6 +608,41 @@ class NsdManagerTest {
}
}
@Test
fun testNsdManager_RegisterServiceNameWithNonStandardCharacters() {
val serviceNames = "^Nsd.Test|Non-#AsCiI\\Characters&\\ufffe テスト 測試"
val si = NsdServiceInfo().apply {
serviceType = SERVICE_TYPE
serviceName = serviceNames
port = 12345 // Test won't try to connect so port does not matter
}
// Register the service name which contains non-standard characters.
val registrationRecord = NsdRegistrationRecord()
nsdManager.registerService(si, NsdManager.PROTOCOL_DNS_SD, registrationRecord)
registrationRecord.expectCallback<ServiceRegistered>()
tryTest {
// Discover that service name.
val discoveryRecord = NsdDiscoveryRecord()
nsdManager.discoverServices(
SERVICE_TYPE, NsdManager.PROTOCOL_DNS_SD, discoveryRecord
)
val foundInfo = discoveryRecord.waitForServiceDiscovered(serviceNames)
// Expect that resolving the service name works properly even service name contains
// non-standard characters.
val resolveRecord = NsdResolveRecord()
nsdManager.resolveService(foundInfo, resolveRecord)
val resolvedCb = resolveRecord.expectCallback<ServiceResolved>()
assertEquals(foundInfo.serviceName, resolvedCb.serviceInfo.serviceName)
} cleanupStep {
nsdManager.unregisterService(registrationRecord)
} cleanup {
registrationRecord.expectCallback<ServiceUnregistered>()
}
}
/**
* Register a service and return its registration record.
*/