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

Commit 7355fc7a authored by Wenhao Wang's avatar Wenhao Wang
Browse files

BinaryTransparencyServiceTest: Avoid schedule()

To fix the testing breakage, we avoid the JobScheduler.schedule()
by leveraging a context spy to stub the getSystemService().

Bug: 230008604
Test: BinaryTransparencyServiceTest
Change-Id: I8243d3afd66243f145eccdb6a6ab97596d11c7f3
parent 6584dbb6
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -16,6 +16,10 @@

package com.android.server;

import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;

import android.app.job.JobScheduler;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
@@ -43,13 +47,15 @@ public class BinaryTransparencyServiceTest {

    @Before
    public void setUp() {
        mContext = ApplicationProvider.getApplicationContext();
        mContext = spy(ApplicationProvider.getApplicationContext());
        mBinaryTransparencyService = new BinaryTransparencyService(mContext);
        mTestInterface = mBinaryTransparencyService.new BinaryTransparencyServiceImpl();
    }

    private void prepSignedInfo() {
        // simulate what happens on boot completed phase
        // but we avoid calling JobScheduler.schedule by returning a null.
        doReturn(null).when(mContext).getSystemService(JobScheduler.class);
        mBinaryTransparencyService.onBootPhase(SystemService.PHASE_BOOT_COMPLETED);
    }