Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 37367e7a authored by Lucas Lin's avatar Lucas Lin Committed by Automerger Merge Worker
Browse files

Merge "Separate 2 tests to verify canBeSatisfiedBy()" am: f01b37a7 am:...

Merge "Separate 2 tests to verify canBeSatisfiedBy()" am: f01b37a7 am: 54527bee am: e0abbef0 am: a308b620

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1495268

Change-Id: I9aeddaa3e331f609bbdba8ab0c2d6e014123f242
parents e93d8f0a a308b620
Loading
Loading
Loading
Loading
+25 −5
Original line number Diff line number Diff line
@@ -19,13 +19,19 @@ package android.net
import android.net.wifi.aware.DiscoverySession
import android.net.wifi.aware.PeerHandle
import android.net.wifi.aware.WifiAwareNetworkSpecifier
import android.os.Build
import androidx.test.filters.SmallTest
import androidx.test.runner.AndroidJUnit4

import com.android.testutils.assertParcelSane
import com.android.testutils.DevSdkIgnoreRule
import com.android.testutils.DevSdkIgnoreRule.IgnoreAfter
import com.android.testutils.DevSdkIgnoreRule.IgnoreUpTo

import java.lang.IllegalStateException

import org.junit.Assert.assertFalse
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mockito
@@ -33,18 +39,32 @@ import org.mockito.Mockito
@RunWith(AndroidJUnit4::class)
@SmallTest
class MatchAllNetworkSpecifierTest {
    @Rule @JvmField
    val ignoreRule: DevSdkIgnoreRule = DevSdkIgnoreRule()

    private val specifier = MatchAllNetworkSpecifier()
    private val discoverySession = Mockito.mock(DiscoverySession::class.java)
    private val peerHandle = Mockito.mock(PeerHandle::class.java)
    private val wifiAwareNetworkSpecifier = WifiAwareNetworkSpecifier.Builder(discoverySession,
            peerHandle).build()

    @Test
    fun testParcel() {
        assertParcelSane(MatchAllNetworkSpecifier(), 0)
    }

    @Test @IgnoreAfter(Build.VERSION_CODES.R)
    fun testCanBeSatisfiedBy_BeforeS() {
        // MatchAllNetworkSpecifier didn't follow its parent class to change the satisfiedBy() to
        // canBeSatisfiedBy(), so if a caller calls MatchAllNetworkSpecifier#canBeSatisfiedBy(), the
        // NetworkSpecifier#canBeSatisfiedBy() will be called actually, and false will be returned.
        // Although it's not meeting the expectation, the behavior still needs to be verified.
        assertFalse(specifier.canBeSatisfiedBy(wifiAwareNetworkSpecifier))
    }

    @Test(expected = IllegalStateException::class)
    @IgnoreUpTo(Build.VERSION_CODES.R)
    fun testCanBeSatisfiedBy() {
        val specifier = MatchAllNetworkSpecifier()
        val discoverySession = Mockito.mock(DiscoverySession::class.java)
        val peerHandle = Mockito.mock(PeerHandle::class.java)
        val wifiAwareNetworkSpecifier = WifiAwareNetworkSpecifier.Builder(discoverySession,
                peerHandle).build()
        specifier.canBeSatisfiedBy(wifiAwareNetworkSpecifier)
    }
}