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

Commit 79d6164a authored by Felka Chang's avatar Felka Chang
Browse files

Fix wrong matcher for PackageSetting.keySetData

The copy constructor of PackageSetting is using
`new PacakgeKeySetData(other.keySetData)` in copyPackageSetting
function. The current test compare the expected result by comparing
reference. It should compare the expected result by comparing
the individual private member fields in PackageKeySetData.
* mProperSigningKeySet
* mUpgradeKeySets
* mKeySetAliases

Fixes: 206929914

Test: TP="FrameworksServicesTests"; atest \
    ${TP}:com.android.server.pm.PackageManagerSettingsTests
Change-Id: I993be33b10dfe0483ca4c3b874a49c5f1fdae41d
parent c3c442a8
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import static android.content.pm.SuspendDialogInfo.BUTTON_ACTION_UNSUSPEND;
import static android.content.pm.parsing.ParsingPackageUtils.parsePublicKey;
import static android.content.res.Resources.ID_NULL;

import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.notNullValue;
@@ -86,7 +87,6 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.CountDownLatch;
@@ -1004,6 +1004,13 @@ public class PackageManagerSettingsTests {
        }
    }

    private void verifyKeySetData(PackageKeySetData originalData, PackageKeySetData testData) {
        assertThat(originalData.getProperSigningKeySet(),
                equalTo(testData.getProperSigningKeySet()));
        assertThat(originalData.getUpgradeKeySets(), is(testData.getUpgradeKeySets()));
        assertThat(originalData.getAliases(), is(testData.getAliases()));
    }

    private void verifySettingCopy(PackageSetting origPkgSetting, PackageSetting testPkgSetting) {
        assertThat(origPkgSetting, is(not(testPkgSetting)));
        assertThat(origPkgSetting.getAppId(), is(testPkgSetting.getAppId()));
@@ -1018,8 +1025,7 @@ public class PackageManagerSettingsTests {
        assertSame(origPkgSetting.getInstallSource(), testPkgSetting.getInstallSource());
        assertThat(origPkgSetting.isInstallPermissionsFixed(),
                is(testPkgSetting.isInstallPermissionsFixed()));
        assertSame(origPkgSetting.getKeySetData(), testPkgSetting.getKeySetData());
        assertThat(origPkgSetting.getKeySetData(), is(testPkgSetting.getKeySetData()));
        verifyKeySetData(origPkgSetting.getKeySetData(), testPkgSetting.getKeySetData());
        assertThat(origPkgSetting.getLastUpdateTime(), is(testPkgSetting.getLastUpdateTime()));
        assertSame(origPkgSetting.getLegacyNativeLibraryPath(),
                testPkgSetting.getLegacyNativeLibraryPath());