@Nullable private static String getTestBuildType(Project project) { PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return androidExtension.getTestBuildType(); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return androidExtension.getTestBuildType(); } return null; }
@Nullable private static String getTestBuildType(Project project) { PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return androidExtension.getTestBuildType(); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return androidExtension.getTestBuildType(); } return null; }
@Nullable private static List<File> getBootClasspath(Project project) { PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return androidExtension.getBootClasspath(); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return androidExtension.getBootClasspath(); } PluginCollection<TestPlugin> testPlugins = project.getPlugins().withType(TestPlugin.class); if (!testPlugins.isEmpty()) { TestExtension androidExtension = project.getExtensions().getByType(TestExtension.class); return androidExtension.getBootClasspath(); } return null; }
@Nullable private static List<File> getBootClasspath(Project project) { PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return androidExtension.getBootClasspath(); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return androidExtension.getBootClasspath(); } PluginCollection<TestPlugin> testPlugins = project.getPlugins().withType(TestPlugin.class); if (!testPlugins.isEmpty()) { TestExtension androidExtension = project.getExtensions().getByType(TestExtension.class); return androidExtension.getBootClasspath(); } return null; }
@Nullable static BaseVariant findVariant(Project project, @Nullable String userConfiguredBuildVariantName) { String testBuildType = getTestBuildType(project); PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return findVariant(new ArrayList<>(androidExtension.getApplicationVariants()), testBuildType, userConfiguredBuildVariantName); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return findVariant(new ArrayList<>(androidExtension.getLibraryVariants()), testBuildType, userConfiguredBuildVariantName); } PluginCollection<TestPlugin> testPlugins = project.getPlugins().withType(TestPlugin.class); if (!testPlugins.isEmpty()) { TestExtension androidExtension = project.getExtensions().getByType(TestExtension.class); return findVariant(new ArrayList<>(androidExtension.getApplicationVariants()), testBuildType, userConfiguredBuildVariantName); } return null; }
@Nullable static BaseVariant findVariant(Project project, @Nullable String userConfiguredBuildVariantName) { String testBuildType = getTestBuildType(project); PluginCollection<AppPlugin> appPlugins = project.getPlugins().withType(AppPlugin.class); if (!appPlugins.isEmpty()) { AppExtension androidExtension = project.getExtensions().getByType(AppExtension.class); return findVariant(new ArrayList<>(androidExtension.getApplicationVariants()), testBuildType, userConfiguredBuildVariantName); } PluginCollection<LibraryPlugin> libPlugins = project.getPlugins().withType(LibraryPlugin.class); if (!libPlugins.isEmpty()) { LibraryExtension androidExtension = project.getExtensions().getByType(LibraryExtension.class); return findVariant(new ArrayList<>(androidExtension.getLibraryVariants()), testBuildType, userConfiguredBuildVariantName); } PluginCollection<TestPlugin> testPlugins = project.getPlugins().withType(TestPlugin.class); if (!testPlugins.isEmpty()) { TestExtension androidExtension = project.getExtensions().getByType(TestExtension.class); return findVariant(new ArrayList<>(androidExtension.getApplicationVariants()), testBuildType, userConfiguredBuildVariantName); } return null; }