Revert "Revert "Changes needed to upgrade to new gradle version""
This reverts commit 46216d0e61
.
Reason for revert: Roll forward
- Added ag/3351790 to the topic
Change-Id: I64990e558d3f77165ab3fe89006a02225b712257
This commit is contained in:
parent
46216d0e61
commit
66815fe663
|
@ -16,6 +16,7 @@
|
|||
|
||||
package com.android.setupwizardlib.view;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.Context;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.graphics.PorterDuff;
|
||||
|
@ -30,6 +31,7 @@ import android.widget.Button;
|
|||
* Button for navigation bar, which includes tinting of its compound drawables to be used for dark
|
||||
* and light themes.
|
||||
*/
|
||||
@SuppressLint("AppCompatCustomView")
|
||||
public class NavigationBarButton extends Button {
|
||||
|
||||
public NavigationBarButton(Context context) {
|
||||
|
|
|
@ -32,7 +32,6 @@ import android.widget.FrameLayout;
|
|||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -44,7 +43,7 @@ import org.robolectric.annotation.Config;
|
|||
import java.util.ArrayList;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
public class ExpandableSwitchItemTest {
|
||||
|
||||
private TextView mSummaryView;
|
||||
|
|
|
@ -31,7 +31,6 @@ import android.widget.FrameLayout;
|
|||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -40,7 +39,7 @@ import org.junit.runner.RunWith;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
public class SwitchItemTest {
|
||||
|
||||
private SwitchCompat mSwitch;
|
||||
|
|
|
@ -25,7 +25,6 @@ import android.util.DisplayMetrics;
|
|||
import android.util.TypedValue;
|
||||
import android.view.ContextThemeWrapper;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -35,7 +34,7 @@ import org.junit.runner.RunWith;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = Config.ALL_SDKS)
|
||||
@Config(sdk = Config.ALL_SDKS)
|
||||
public class DimensionConsistencyTest {
|
||||
|
||||
// Visual height of the framework switch widget
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<lint>
|
||||
<!-- SUW lib prefixes styleable resources -->
|
||||
<issue id="CustomViewStyleable" severity="ignore" />
|
||||
<issue id="ExtraTranslation" severity="ignore" />
|
||||
<issue id="GradleDependency" severity="ignore" />
|
||||
<issue id="MissingTranslation" severity="ignore" />
|
||||
<!-- Stop lint from complaining about SDK version checks in the "platform" variant -->
|
||||
<issue id="ObsoleteSdkInt" severity="ignore" />
|
||||
<issue id="RtlEnabled" severity="ignore" />
|
||||
</lint>
|
||||
|
|
|
@ -32,9 +32,6 @@
|
|||
<item name="suwScrollIndicators">top|bottom</item>
|
||||
</style>
|
||||
|
||||
<!-- Deprecated. Use SuwThemeGlifV2 instead -->
|
||||
<style name="SuwThemeGlifPixel" parent="SuwThemeGlifV2" />
|
||||
|
||||
<style name="SuwThemeGlifV2.Light" parent="SuwThemeGlif.Light">
|
||||
<item name="android:colorBackground">@color/suw_glif_background_color_light</item>
|
||||
<item name="android:windowLightStatusBar" tools:targetApi="m">true</item>
|
||||
|
@ -48,9 +45,6 @@
|
|||
<item name="suwScrollIndicators">top|bottom</item>
|
||||
</style>
|
||||
|
||||
<!-- Deprecated. Use SuwThemeGlifV2.Light instead -->
|
||||
<style name="SuwThemeGlifPixel.Light" parent="SuwThemeGlifV2.Light" />
|
||||
|
||||
<style name="SuwThemeGlifV3" parent="SuwThemeGlifV2">
|
||||
<item name="suwButtonColor">@color/suw_glif_v3_footer_button_color</item>
|
||||
</style>
|
||||
|
@ -94,11 +88,10 @@
|
|||
<item name="android:textAlignment" tools:targetApi="jelly_bean_mr1">gravity</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.SuwDescription.Light" parent="TextAppearance.SuwDescription">
|
||||
<item name="android:fontFamily" tools:ignore="NewApi">sans-serif-light</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.SuwDescription.Secondary" parent="TextAppearance.SuwDescription">
|
||||
<!-- Ignore UnusedResources: Used by clients -->
|
||||
<style name="TextAppearance.SuwDescription.Secondary"
|
||||
parent="TextAppearance.SuwDescription"
|
||||
tools:ignore="UnusedResources">
|
||||
<item name="android:textColor">?android:attr/textColorSecondary</item>
|
||||
</style>
|
||||
|
||||
|
@ -211,7 +204,10 @@
|
|||
<item name="android:textAllCaps" tools:targetApi="ice_cream_sandwich">false</item>
|
||||
</style>
|
||||
|
||||
<style name="SuwGlifButton.Tertiary" parent="SuwGlifButton.BaseTertiary" />
|
||||
<!-- Ignore UnusedResources: used by clients -->
|
||||
<style name="SuwGlifButton.Tertiary"
|
||||
parent="SuwGlifButton.BaseTertiary"
|
||||
tools:ignore="UnusedResources" />
|
||||
|
||||
<!-- The start and end paddings are asymmetric because start buttons are borderless buttons
|
||||
which aligns the text label. -->
|
||||
|
|
|
@ -79,24 +79,12 @@ public class WizardManagerHelper {
|
|||
*/
|
||||
public static final String THEME_GLIF_V2 = "glif_v2";
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #THEME_GLIF_V2} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String THEME_GLIF_PIXEL = THEME_GLIF_V2;
|
||||
|
||||
/**
|
||||
* Passed in a setup wizard intent as {@link #EXTRA_THEME}. This is the default theme used in
|
||||
* setup wizard for O DR.
|
||||
*/
|
||||
public static final String THEME_GLIF_V2_LIGHT = "glif_v2_light";
|
||||
|
||||
/**
|
||||
* @deprecated Use {@link #THEME_GLIF_V2_LIGHT} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String THEME_GLIF_PIXEL_LIGHT = THEME_GLIF_V2_LIGHT;
|
||||
|
||||
/**
|
||||
* Passed in a setup wizard intent as {@link #EXTRA_THEME}. This is the dark variant of the
|
||||
* theme used in setup wizard for P.
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
<item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
|
||||
<item name="android:navigationBarColor">@android:color/black</item>
|
||||
<item name="android:statusBarColor">@android:color/black</item>
|
||||
<item name="android:textAppearanceListItemSmall">@android:style/TextAppearance.Material.Body1</item>
|
||||
<item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwItemSummary</item>
|
||||
<item name="android:textColorLink">@color/suw_link_color_dark</item>
|
||||
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
|
||||
<item name="android:windowDisablePreview">true</item>
|
||||
|
@ -65,7 +65,7 @@
|
|||
<item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
|
||||
<item name="android:navigationBarColor">@android:color/black</item>
|
||||
<item name="android:statusBarColor">@android:color/black</item>
|
||||
<item name="android:textAppearanceListItemSmall">@android:style/TextAppearance.Material.Body1</item>
|
||||
<item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwItemSummary</item>
|
||||
<item name="android:textColorLink">@color/suw_link_color_light</item>
|
||||
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
|
||||
<item name="android:windowDisablePreview">true</item>
|
||||
|
|
|
@ -27,7 +27,6 @@ import static org.robolectric.RuntimeEnvironment.application;
|
|||
import android.support.v7.widget.RecyclerView;
|
||||
import android.support.v7.widget.RecyclerView.OnScrollListener;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
import org.junit.Before;
|
||||
|
@ -38,7 +37,7 @@ import org.mockito.Mock;
|
|||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
public class RecyclerViewScrollHandlingDelegateTest {
|
||||
|
||||
|
|
|
@ -21,9 +21,12 @@ android {
|
|||
res.srcDirs = ['main/res']
|
||||
}
|
||||
|
||||
flavorDimensions 'compat'
|
||||
|
||||
productFlavors {
|
||||
// Platform version that will not include the compatibility libraries
|
||||
platform {
|
||||
dimension 'compat'
|
||||
minSdkVersion 23
|
||||
|
||||
dependencies {
|
||||
|
@ -43,16 +46,17 @@ android {
|
|||
// deps = ['project-name': 'com.example.group:project-name:1.0.0']
|
||||
// }
|
||||
//
|
||||
platformCompile deps['support-annotations']
|
||||
platformImplementation deps['support-annotations']
|
||||
}
|
||||
}
|
||||
|
||||
// Provides backwards compatibility for Gingerbread or above, using support libraries.
|
||||
gingerbreadCompat {
|
||||
dimension 'compat'
|
||||
minSdkVersion 9
|
||||
dependencies {
|
||||
gingerbreadCompatCompile deps['support-appcompat-v7']
|
||||
gingerbreadCompatCompile deps['support-recyclerview-v7']
|
||||
gingerbreadCompatImplementation deps['support-appcompat-v7']
|
||||
gingerbreadCompatImplementation deps['support-recyclerview-v7']
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,12 +13,12 @@ android.sourceSets {
|
|||
res.srcDirs = ['test/instrumentation/res']
|
||||
|
||||
dependencies {
|
||||
androidTestCompile 'com.android.support.test:rules:0.5'
|
||||
androidTestCompile 'com.android.support.test:runner:0.5'
|
||||
androidTestCompile 'com.google.dexmaker:dexmaker:1.2'
|
||||
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'
|
||||
androidTestCompile 'junit:junit:4.+'
|
||||
androidTestCompile 'org.mockito:mockito-core:1.9.5'
|
||||
androidTestImplementation 'com.android.support.test:rules:0.5'
|
||||
androidTestImplementation 'com.android.support.test:runner:0.5'
|
||||
androidTestImplementation 'com.google.dexmaker:dexmaker:1.2'
|
||||
androidTestImplementation 'com.google.dexmaker:dexmaker-mockito:1.2'
|
||||
androidTestImplementation 'junit:junit:4.+'
|
||||
androidTestImplementation 'org.mockito:mockito-core:1.9.5'
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -38,12 +38,12 @@ android.sourceSets {
|
|||
java.srcDirs = ['test/robotest/src']
|
||||
|
||||
dependencies {
|
||||
testCompile 'org.robolectric:robolectric:3.4.2'
|
||||
testCompile 'org.robolectric:framework:3.4.2'
|
||||
testCompile 'junit:junit:4.+'
|
||||
testCompile 'org.mockito:mockito-core:1.9.5'
|
||||
testImplementation 'org.robolectric:robolectric:3.4.2'
|
||||
testImplementation 'org.robolectric:framework:3.4.2'
|
||||
testImplementation 'junit:junit:4.+'
|
||||
testImplementation 'org.mockito:mockito-core:1.9.5'
|
||||
// Workaround for https://github.com/robolectric/robolectric/issues/2566
|
||||
testCompile 'org.khronos:opengl-api:gl1.1-android-2.1_r1'
|
||||
testImplementation 'org.khronos:opengl-api:gl1.1-android-2.1_r1'
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -51,6 +51,9 @@ android.sourceSets {
|
|||
java.srcDirs = ['gingerbread/test/robotest/src', 'recyclerview/test/robotest/src']
|
||||
}
|
||||
}
|
||||
|
||||
android.testOptions.unitTests.includeAndroidResources = true
|
||||
|
||||
android.defaultConfig.testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||
android.lintOptions {
|
||||
abortOnError true
|
||||
|
|
|
@ -54,7 +54,7 @@ import org.robolectric.Robolectric;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
public class GlifLayoutTest {
|
||||
|
||||
private Context mContext;
|
||||
|
|
|
@ -39,7 +39,6 @@ import android.widget.Button;
|
|||
import android.widget.FrameLayout;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.items.ButtonItem.OnClickListener;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
@ -50,9 +49,7 @@ import org.junit.runner.RunWith;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(
|
||||
constants = BuildConfig.class,
|
||||
sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
public class ButtonItemTest {
|
||||
|
||||
private ViewGroup mParent;
|
||||
|
|
|
@ -24,7 +24,6 @@ import static org.mockito.Mockito.inOrder;
|
|||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.verifyNoMoreInteractions;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
import org.junit.Before;
|
||||
|
@ -36,9 +35,7 @@ import org.mockito.MockitoAnnotations;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(
|
||||
constants = BuildConfig.class,
|
||||
sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
public class ItemGroupTest {
|
||||
|
||||
private static final Item CHILD_1 = new EqualsItem("Child 1");
|
||||
|
|
|
@ -1,126 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.setupwizardlib.robolectric;
|
||||
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.internal.GradleManifestFactory;
|
||||
import org.robolectric.internal.ManifestIdentifier;
|
||||
import org.robolectric.res.FileFsFile;
|
||||
import org.robolectric.util.Logger;
|
||||
import org.robolectric.util.ReflectionHelpers;
|
||||
|
||||
import java.io.File;
|
||||
import java.net.URL;
|
||||
|
||||
/**
|
||||
* Modified GradleManifestFactory to patch an issue where some build variants have merged
|
||||
* resources under res/merged/variant/type while others have it under bundles/variant/type/res.
|
||||
*
|
||||
* The change is that in the .exists() checks below we check for specific folders for the build
|
||||
* variant rather than checking existence at the parent directory.
|
||||
*/
|
||||
class PatchedGradleManifestFactory extends GradleManifestFactory {
|
||||
|
||||
@Override
|
||||
public ManifestIdentifier identify(Config config) {
|
||||
if (config.constants() == Void.class) {
|
||||
Logger.error("Field 'constants' not specified in @Config annotation");
|
||||
Logger.error("This is required when using Robolectric with Gradle!");
|
||||
throw new RuntimeException("No 'constants' field in @Config annotation!");
|
||||
}
|
||||
|
||||
final String buildOutputDir = getBuildOutputDir(config);
|
||||
final String type = getType(config);
|
||||
final String flavor = getFlavor(config);
|
||||
final String abiSplit = getAbiSplit(config);
|
||||
final String packageName = config.packageName().isEmpty()
|
||||
? config.constants().getPackage().getName()
|
||||
: config.packageName();
|
||||
|
||||
final FileFsFile res;
|
||||
final FileFsFile assets;
|
||||
final FileFsFile manifest;
|
||||
|
||||
if (FileFsFile.from(buildOutputDir, "data-binding-layout-out", flavor, type).exists()) {
|
||||
// Android gradle plugin 1.5.0+ puts the merged layouts in data-binding-layout-out.
|
||||
// https://github.com/robolectric/robolectric/issues/2143
|
||||
res = FileFsFile.from(buildOutputDir, "data-binding-layout-out", flavor, type);
|
||||
} else if (FileFsFile.from(buildOutputDir, "res", "merged", flavor, type).exists()) {
|
||||
// res/merged added in Android Gradle plugin 1.3-beta1
|
||||
res = FileFsFile.from(buildOutputDir, "res", "merged", flavor, type);
|
||||
} else if (FileFsFile.from(buildOutputDir, "res", flavor, type).exists()) {
|
||||
res = FileFsFile.from(buildOutputDir, "res", flavor, type);
|
||||
} else {
|
||||
res = FileFsFile.from(buildOutputDir, "bundles", flavor, type, "res");
|
||||
}
|
||||
|
||||
if (FileFsFile.from(buildOutputDir, "assets", flavor, type).exists()) {
|
||||
assets = FileFsFile.from(buildOutputDir, "assets", flavor, type);
|
||||
} else {
|
||||
assets = FileFsFile.from(buildOutputDir, "bundles", flavor, type, "assets");
|
||||
}
|
||||
|
||||
String manifestName = config.manifest();
|
||||
URL manifestUrl = getClass().getClassLoader().getResource(manifestName);
|
||||
if (manifestUrl != null && manifestUrl.getProtocol().equals("file")) {
|
||||
manifest = FileFsFile.from(manifestUrl.getPath());
|
||||
} else if (FileFsFile.from(buildOutputDir, "manifests", "full", flavor, abiSplit, type,
|
||||
manifestName).exists()) {
|
||||
manifest = FileFsFile.from(
|
||||
buildOutputDir, "manifests", "full", flavor, abiSplit, type, manifestName);
|
||||
} else if (FileFsFile.from(buildOutputDir, "manifests", "aapt", flavor, abiSplit, type,
|
||||
manifestName).exists()) {
|
||||
// Android gradle plugin 2.2.0+ can put library manifest files inside of "aapt"
|
||||
// instead of "full"
|
||||
manifest = FileFsFile.from(buildOutputDir, "manifests", "aapt", flavor, abiSplit,
|
||||
type, manifestName);
|
||||
} else {
|
||||
manifest = FileFsFile.from(buildOutputDir, "bundles", flavor, abiSplit, type,
|
||||
manifestName);
|
||||
}
|
||||
|
||||
return new ManifestIdentifier(manifest, res, assets, packageName, null);
|
||||
}
|
||||
|
||||
private static String getBuildOutputDir(Config config) {
|
||||
return config.buildDir() + File.separator + "intermediates";
|
||||
}
|
||||
|
||||
private static String getType(Config config) {
|
||||
try {
|
||||
return ReflectionHelpers.getStaticField(config.constants(), "BUILD_TYPE");
|
||||
} catch (Throwable e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private static String getFlavor(Config config) {
|
||||
try {
|
||||
return ReflectionHelpers.getStaticField(config.constants(), "FLAVOR");
|
||||
} catch (Throwable e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private static String getAbiSplit(Config config) {
|
||||
try {
|
||||
return config.abiSplit();
|
||||
} catch (Throwable e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -20,42 +20,13 @@ import org.junit.runner.notification.RunNotifier;
|
|||
import org.junit.runners.model.FrameworkMethod;
|
||||
import org.junit.runners.model.InitializationError;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.internal.ManifestFactory;
|
||||
|
||||
public class SuwLibRobolectricTestRunner extends RobolectricTestRunner {
|
||||
|
||||
private String mModuleRootPath;
|
||||
|
||||
public SuwLibRobolectricTestRunner(Class<?> testClass) throws InitializationError {
|
||||
super(testClass);
|
||||
}
|
||||
|
||||
// Hack to determine the module root path in the build folder (e.g. out/gradle/setup-wizard-lib)
|
||||
private void updateModuleRootPath(Config config) {
|
||||
String moduleRoot = config.constants().getResource("").toString()
|
||||
.replace("file:", "").replace("jar:", "");
|
||||
mModuleRootPath =
|
||||
moduleRoot.substring(0, moduleRoot.lastIndexOf("/build")) + "/setup-wizard-lib";
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the default config used to run Robolectric tests.
|
||||
*/
|
||||
@Override
|
||||
protected Config buildGlobalConfig() {
|
||||
Config parent = super.buildGlobalConfig();
|
||||
updateModuleRootPath(parent);
|
||||
return new Config.Builder(parent)
|
||||
.setBuildDir(mModuleRootPath + "/build")
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ManifestFactory getManifestFactory(Config config) {
|
||||
return new PatchedGradleManifestFactory();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void runChild(FrameworkMethod method, RunNotifier notifier) {
|
||||
System.out.println("===== Running " + method + " =====");
|
||||
|
|
|
@ -23,15 +23,12 @@ import android.content.Context;
|
|||
import android.content.ContextWrapper;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class)
|
||||
public class LinkSpanTest {
|
||||
|
||||
@Test
|
||||
|
@ -68,6 +65,7 @@ public class LinkSpanTest {
|
|||
assertSame("Clicked LinkSpan should be passed to setup", linkSpan, context.clickedSpan);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
private static class TestContext extends ContextWrapper implements LinkSpan.OnClickListener {
|
||||
|
||||
public LinkSpan clickedSpan = null;
|
||||
|
|
|
@ -31,7 +31,6 @@ import android.widget.AbsListView.OnScrollListener;
|
|||
import android.widget.BaseAdapter;
|
||||
import android.widget.ListView;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
import org.junit.Before;
|
||||
|
@ -42,7 +41,7 @@ import org.mockito.Mock;
|
|||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
public class ListViewScrollHandlingDelegateTest {
|
||||
|
||||
|
|
|
@ -34,7 +34,6 @@ import android.view.View;
|
|||
import android.view.View.OnClickListener;
|
||||
import android.widget.Button;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.TemplateLayout;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
import com.android.setupwizardlib.template.RequireScrollMixin.OnRequireScrollStateChangedListener;
|
||||
|
@ -48,7 +47,7 @@ import org.mockito.Mock;
|
|||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
public class RequireScrollMixinTest {
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@ import static org.mockito.Mockito.spy;
|
|||
import static org.mockito.Mockito.verify;
|
||||
import static org.robolectric.RuntimeEnvironment.application;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
import com.android.setupwizardlib.view.BottomScrollView;
|
||||
import com.android.setupwizardlib.view.BottomScrollView.BottomScrollListener;
|
||||
|
@ -36,7 +35,7 @@ import org.mockito.Mock;
|
|||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.annotation.Config;
|
||||
|
||||
@Config(constants = BuildConfig.class, sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@Config(sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK })
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
public class ScrollViewScrollHandlingDelegateTest {
|
||||
|
||||
|
|
|
@ -26,7 +26,6 @@ import android.util.DisplayMetrics;
|
|||
import android.util.TypedValue;
|
||||
import android.view.ContextThemeWrapper;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -36,7 +35,7 @@ import org.junit.runner.RunWith;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = Config.ALL_SDKS)
|
||||
@Config(sdk = Config.ALL_SDKS)
|
||||
public class GlifDimensionTest {
|
||||
|
||||
private Context mContext;
|
||||
|
|
|
@ -30,7 +30,6 @@ import android.support.annotation.Nullable;
|
|||
import android.view.ContextThemeWrapper;
|
||||
import android.widget.Button;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -41,7 +40,7 @@ import org.robolectric.Robolectric;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = {Config.OLDEST_SDK, Config.NEWEST_SDK})
|
||||
@Config(sdk = {Config.OLDEST_SDK, Config.NEWEST_SDK})
|
||||
public class GlifStyleTest {
|
||||
|
||||
private Context mContext;
|
||||
|
|
|
@ -37,7 +37,6 @@ import android.content.res.Resources;
|
|||
import android.os.Build.VERSION;
|
||||
import android.os.Build.VERSION_CODES;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
import com.android.setupwizardlib.util.Partner.ResourceEntry;
|
||||
|
@ -57,7 +56,6 @@ import java.util.Collections;
|
|||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(
|
||||
constants = BuildConfig.class,
|
||||
sdk = { Config.OLDEST_SDK, Config.NEWEST_SDK },
|
||||
shadows = ShadowApplicationPackageManager.class)
|
||||
public class PartnerTest {
|
||||
|
|
|
@ -31,7 +31,6 @@ import android.provider.Settings.Global;
|
|||
import android.provider.Settings.Secure;
|
||||
import android.support.annotation.StyleRes;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
|
@ -44,7 +43,7 @@ import java.util.Arrays;
|
|||
import java.util.List;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = Config.NEWEST_SDK)
|
||||
@Config(sdk = Config.NEWEST_SDK)
|
||||
public class WizardManagerHelperTest {
|
||||
|
||||
@Test
|
||||
|
|
|
@ -22,7 +22,6 @@ import static org.robolectric.RuntimeEnvironment.application;
|
|||
import android.view.View;
|
||||
import android.view.View.MeasureSpec;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
|
||||
import org.junit.Test;
|
||||
|
@ -31,7 +30,7 @@ import org.robolectric.Robolectric;
|
|||
import org.robolectric.annotation.Config;
|
||||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(constants = BuildConfig.class, sdk = {Config.OLDEST_SDK, Config.NEWEST_SDK})
|
||||
@Config(sdk = {Config.OLDEST_SDK, Config.NEWEST_SDK})
|
||||
public class FillContentLayoutTest {
|
||||
|
||||
@Test
|
||||
|
|
|
@ -31,7 +31,6 @@ import android.os.Build.VERSION_CODES;
|
|||
import android.support.annotation.RawRes;
|
||||
import android.view.Surface;
|
||||
|
||||
import com.android.setupwizardlib.BuildConfig;
|
||||
import com.android.setupwizardlib.R;
|
||||
import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner;
|
||||
import com.android.setupwizardlib.view.IllustrationVideoViewTest.ShadowMockMediaPlayer;
|
||||
|
@ -54,7 +53,6 @@ import org.robolectric.util.ReflectionHelpers;
|
|||
|
||||
@RunWith(SuwLibRobolectricTestRunner.class)
|
||||
@Config(
|
||||
constants = BuildConfig.class,
|
||||
sdk = Config.NEWEST_SDK,
|
||||
shadows = {
|
||||
ShadowMockMediaPlayer.class,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Set the default SDK and build tools version for all apps
|
||||
compileSdkVersion 26
|
||||
buildToolsVersion = '26.0.0'
|
||||
compileSdkVersion 27
|
||||
buildToolsVersion = '27.0.0'
|
||||
|
||||
// enable Java7
|
||||
compileOptions.sourceCompatibility JavaVersion.VERSION_1_7
|
||||
|
|
Loading…
Reference in New Issue