[FUI04] Refactor VpnInfo
As a preparation of exposing system API. This patch does some
harmless refactoring, which includes:
1. Change raw arrays into lists according to API guidelines.
2. Write test.
3. Rename class to UnderlyingNetworkInfo.
4. Rename vpnIface to iface.
5. Make underlyingIfaces @NonNull in order to adapt new
unparceling code.
6. implement equals and hashCode for testing.
Test: atest android.net.UnderlyingNetworkInfoTest
Bug: 174123988
Change-Id: I405c21e57c4af8a12a9dd0a1749b9e6690f87045
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
* Copyright (C) 2021 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package android.net
|
||||
|
||||
import android.os.Build
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.testutils.DevSdkIgnoreRule
|
||||
import com.android.testutils.DevSdkIgnoreRunner
|
||||
import com.android.testutils.assertParcelSane
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
private const val TEST_OWNER_UID = 123
|
||||
private const val TEST_IFACE = "test_tun0"
|
||||
private val TEST_IFACE_LIST = listOf("wlan0", "rmnet_data0", "eth0")
|
||||
|
||||
@SmallTest
|
||||
@RunWith(DevSdkIgnoreRunner::class)
|
||||
@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R)
|
||||
class UnderlyingNetworkInfoTest {
|
||||
@Test
|
||||
fun testParcelUnparcel() {
|
||||
val testInfo = UnderlyingNetworkInfo(TEST_OWNER_UID, TEST_IFACE, TEST_IFACE_LIST)
|
||||
assertEquals(TEST_OWNER_UID, testInfo.ownerUid)
|
||||
assertEquals(TEST_IFACE, testInfo.iface)
|
||||
assertEquals(TEST_IFACE_LIST, testInfo.underlyingIfaces)
|
||||
assertParcelSane(testInfo, 3)
|
||||
|
||||
val emptyInfo = UnderlyingNetworkInfo(0, String(), listOf())
|
||||
assertEquals(0, emptyInfo.ownerUid)
|
||||
assertEquals(String(), emptyInfo.iface)
|
||||
assertEquals(listOf(), emptyInfo.underlyingIfaces)
|
||||
assertParcelSane(emptyInfo, 3)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user