我想在 ShadowPackageManager 中添加带有 versionCode 的 PackageInfo,以检查 packageInfo 中提供的 versionCode 是否小于、大于或等于单元测试用例中提供的 versionCode。
PackageInfo packageInfo = new PackageInfo();
packageInfo.packageName = PACKAGE_NAME;
packageInfo.versionCode = 15050;
ShadowPackageManager mRBPakcageManger = shadowOf(ApplicationProvider.getApplicationContext().getPackageManager());
mRBPakcageManger.installPackage(packageInfo);
当我尝试获取版本代码进行测试时,它会返回我在 gradle 文件中给出的 versionCode。如何嘲笑这个?
依赖和 Gradle 版本
classpath 'com.android.tools.build:gradle:4.1.2'
testImplementation 'junit:junit:4.13.2'
testImplementation 'androidx.test.ext:junit-ktx:1.1.2'
testImplementation 'androidx.test:core:1.3.0'
testImplementation 'org.robolectric:robolectric:4.5.1'
testImplementation 'org.robolectric:shadows-support-v4:3.3.2'
testImplementation 'org.robolectric:robolectric-shadows:3.0'
testImplementation 'org.mockito:mockito-all:1.9.0'