diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2021-06-16 01:07:48 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2021-06-16 01:07:48 +0000 |
commit | 89de36fa0fe1a6c7ec15984fc411b7672d1137ca (patch) | |
tree | 033a2ea54f61c1238a5e634fdcc6ee9b4c81fc3a | |
parent | 5882e1ab324afebd1b88ae35935c0d4d0144af76 (diff) | |
parent | 4b96a354409bba6632c59d1ff2b30be54d6c8c16 (diff) | |
download | setupwizard-android12-release.tar.gz |
Snap for 7460608 from 4b96a354409bba6632c59d1ff2b30be54d6c8c16 to sc-releaseandroid-vts-12.0_r9android-vts-12.0_r8android-vts-12.0_r7android-vts-12.0_r6android-vts-12.0_r5android-vts-12.0_r4android-vts-12.0_r3android-vts-12.0_r2android-vts-12.0_r12android-vts-12.0_r11android-vts-12.0_r10android-vts-12.0_r1android-security-12.0.0_r59android-security-12.0.0_r58android-security-12.0.0_r57android-security-12.0.0_r56android-security-12.0.0_r55android-security-12.0.0_r54android-security-12.0.0_r53android-security-12.0.0_r52android-security-12.0.0_r51android-security-12.0.0_r50android-security-12.0.0_r49android-security-12.0.0_r48android-security-12.0.0_r47android-security-12.0.0_r46android-security-12.0.0_r45android-security-12.0.0_r44android-security-12.0.0_r43android-security-12.0.0_r42android-security-12.0.0_r41android-security-12.0.0_r40android-security-12.0.0_r39android-security-12.0.0_r38android-security-12.0.0_r37android-security-12.0.0_r36android-security-12.0.0_r35android-security-12.0.0_r34android-platform-12.0.0_r9android-platform-12.0.0_r8android-platform-12.0.0_r7android-platform-12.0.0_r6android-platform-12.0.0_r5android-platform-12.0.0_r4android-platform-12.0.0_r31android-platform-12.0.0_r30android-platform-12.0.0_r3android-platform-12.0.0_r29android-platform-12.0.0_r28android-platform-12.0.0_r27android-platform-12.0.0_r26android-platform-12.0.0_r25android-platform-12.0.0_r24android-platform-12.0.0_r23android-platform-12.0.0_r22android-platform-12.0.0_r21android-platform-12.0.0_r20android-platform-12.0.0_r2android-platform-12.0.0_r19android-platform-12.0.0_r18android-platform-12.0.0_r17android-platform-12.0.0_r16android-platform-12.0.0_r15android-platform-12.0.0_r14android-platform-12.0.0_r13android-platform-12.0.0_r12android-platform-12.0.0_r11android-platform-12.0.0_r10android-platform-12.0.0_r1android-cts-12.0_r9android-cts-12.0_r8android-cts-12.0_r7android-cts-12.0_r6android-cts-12.0_r5android-cts-12.0_r4android-cts-12.0_r3android-cts-12.0_r2android-cts-12.0_r12android-cts-12.0_r11android-cts-12.0_r10android-cts-12.0_r1android-12.0.0_r9android-12.0.0_r8android-12.0.0_r34android-12.0.0_r33android-12.0.0_r31android-12.0.0_r30android-12.0.0_r3android-12.0.0_r25android-12.0.0_r2android-12.0.0_r11android-12.0.0_r10android-12.0.0_r1android12-tests-releaseandroid12-security-releaseandroid12-s5-releaseandroid12-s4-releaseandroid12-s3-releaseandroid12-s2-releaseandroid12-s1-releaseandroid12-releaseandroid12-platform-release
Change-Id: I66a2bb2e2c5e22d568778bc296e184f34adbcb95
18 files changed, 176 insertions, 40 deletions
diff --git a/library/main/Android.bp b/library/main/Android.bp index 5333edc..f99ecdd 100644 --- a/library/main/Android.bp +++ b/library/main/Android.bp @@ -26,5 +26,5 @@ android_library { optimize: { enabled: false, }, - min_sdk_version: "26", + min_sdk_version: "28", } diff --git a/library/main/AndroidManifest-gradle.xml b/library/main/AndroidManifest-gradle.xml new file mode 100644 index 0000000..cc9c1ab --- /dev/null +++ b/library/main/AndroidManifest-gradle.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 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. +--> + +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="com.android.car.setupwizardlib"> +</manifest> diff --git a/library/main/build.gradle b/library/main/build.gradle new file mode 100644 index 0000000..412e3b0 --- /dev/null +++ b/library/main/build.gradle @@ -0,0 +1,85 @@ +// Copyright (C) 2021 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. +// + +// Library-level build file + +apply plugin: 'com.android.library' + +buildscript { + repositories { + mavenCentral() + } +} + +android { + compileSdkVersion 30 + + defaultConfig { + minSdkVersion 28 + targetSdkVersion 30 + versionCode 1 + versionName "1.0" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + sourceSets { + main { + manifest.srcFile 'AndroidManifest-gradle.xml' + res.srcDirs = ['res'] + java.srcDirs = ['src'] + } + + test { + manifest.srcFile 'tests/robotests/AndroidManifest.xml' + res.srcDirs += ['tests/robotests/res','tests/robotests/config'] + java.srcDirs = ['tests/robotests/src'] + } + } + + android { + lintOptions { + abortOnError false + } + } + + testOptions { + unitTests { + includeAndroidResources = true + } + } +} + +dependencies { + implementation files('../../../../../../prebuilts/sdk/30/system/android.car-system-stubs.jar') + + implementation 'androidx.car:car:1.0.0-alpha7' + implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'androidx.cardview:cardview:1.0.0' + implementation 'androidx.recyclerview:recyclerview:1.2.0' + implementation 'androidx.gridlayout:gridlayout:1.0.0' + implementation 'androidx.preference:preference:1.1.1' + implementation 'androidx.constraintlayout:constraintlayout:2.0.4' + implementation 'androidx.core:core:1.3.2' + implementation 'androidx.annotation:annotation:1.2.0' + + testImplementation 'com.google.truth:truth:0.41' + testImplementation 'org.mockito:mockito-core:3.6.0' + testImplementation 'org.robolectric:robolectric:4.5.1' +} diff --git a/library/main/res/values/attrs.xml b/library/main/res/values/attrs.xml index 667a98f..31d2f5b 100644 --- a/library/main/res/values/attrs.xml +++ b/library/main/res/values/attrs.xml @@ -15,58 +15,81 @@ limitations under the License. --> <resources> + <!-- Attributes related to the visibility of the back button --> + <attr name="showBackButton" format="boolean"/> + + <!-- Attributes related to the visibility and text of the toolbar title --> + <attr name="showToolbarTitle" format="boolean"/> + <attr name="toolbarTitleText" format="string"/> + + <!-- Attributes related to the visibility and text of primary continue button --> + <attr name="showPrimaryToolbarButton" format="boolean"/> + <attr name="primaryToolbarButtonText" format="string"/> + <attr name="primaryToolbarButtonEnabled" format="boolean"/> + <attr name="primaryToolbarButtonFlat" format="boolean"/> + + <!-- Attributes related to the visibility and text of secondary continue button --> + <attr name="showSecondaryToolbarButton" format="boolean"/> + <attr name="secondaryToolbarButtonText" format="string"/> + <attr name="secondaryToolbarButtonEnabled" format="boolean"/> + + <!-- Attributes related to the visibility and indeterminate/determinate state + of the progress bar --> + <attr name="showProgressBar"/> + <attr name="indeterminateProgressBar"/> + <!-- Custom attribute definitions for the CarSetupWizardLayout --> <declare-styleable name="CarSetupWizardLayout"> <!-- Attributes related to the visibility of the back button --> - <attr name="showBackButton" format="boolean"/> + <attr name="showBackButton"/> <!-- Attributes related to the visibility and text of the toolbar title --> - <attr name="showToolbarTitle" format="boolean"/> - <attr name="toolbarTitleText" format="string"/> + <attr name="showToolbarTitle"/> + <attr name="toolbarTitleText"/> <!-- Attributes related to the visibility and text of primary continue button --> - <attr name="showPrimaryToolbarButton" format="boolean"/> - <attr name="primaryToolbarButtonText" format="string"/> - <attr name="primaryToolbarButtonEnabled" format="boolean"/> - <attr name="primaryToolbarButtonFlat" format="boolean"/> + <attr name="showPrimaryToolbarButton"/> + <attr name="primaryToolbarButtonText"/> + <attr name="primaryToolbarButtonEnabled"/> + <attr name="primaryToolbarButtonFlat"/> <!-- Attributes related to the visibility and text of secondary continue button --> - <attr name="showSecondaryToolbarButton" format="boolean"/> - <attr name="secondaryToolbarButtonText" format="string"/> - <attr name="secondaryToolbarButtonEnabled" format="boolean"/> + <attr name="showSecondaryToolbarButton"/> + <attr name="secondaryToolbarButtonText"/> + <attr name="secondaryToolbarButtonEnabled"/> <!-- Attributes related to the visibility and indeterminate/determinate state of the progress bar --> - <attr name="showProgressBar" format="boolean"/> - <attr name="indeterminateProgressBar" format="boolean"/> + <attr name="showProgressBar"/> + <attr name="indeterminateProgressBar" /> </declare-styleable> <!-- Custom attribute definitions for the CarSetupWizardBaseLayout --> <declare-styleable name="CarSetupWizardBaseLayout"> <!-- Attributes related to the visibility of the back button --> - <attr name="showBackButton" format="boolean"/> + <attr name="showBackButton"/> <!-- Attributes related to the visibility of the close button --> <attr name="showCloseButton" format="boolean"/> <!-- Attributes related to the visibility and text of the toolbar title --> - <attr name="showToolbarTitle" format="boolean"/> - <attr name="toolbarTitleText" format="string"/> + <attr name="showToolbarTitle"/> + <attr name="toolbarTitleText"/> <!-- Attributes related to the visibility and text of primary continue button --> - <attr name="showPrimaryToolbarButton" format="boolean"/> - <attr name="primaryToolbarButtonText" format="string"/> - <attr name="primaryToolbarButtonEnabled" format="boolean"/> - <attr name="primaryToolbarButtonFlat" format="boolean"/> + <attr name="showPrimaryToolbarButton"/> + <attr name="primaryToolbarButtonText"/> + <attr name="primaryToolbarButtonEnabled"/> + <attr name="primaryToolbarButtonFlat"/> <!-- Attributes related to the visibility and text of secondary continue button --> - <attr name="showSecondaryToolbarButton" format="boolean"/> - <attr name="secondaryToolbarButtonText" format="string"/> - <attr name="secondaryToolbarButtonEnabled" format="boolean"/> + <attr name="showSecondaryToolbarButton"/> + <attr name="secondaryToolbarButtonText" /> + <attr name="secondaryToolbarButtonEnabled"/> <!-- Attributes related to the visibility and indeterminate/determinate state of the progress bar --> - <attr name="showProgressBar" format="boolean"/> - <attr name="indeterminateProgressBar" format="boolean"/> + <attr name="showProgressBar"/> + <attr name="indeterminateProgressBar"/> </declare-styleable> -</resources>
\ No newline at end of file +</resources> diff --git a/library/main/src/com/android/car/setupwizardlib/BaseActivity.java b/library/main/src/com/android/car/setupwizardlib/BaseActivity.java index 4fe59e7..edd2b73 100644 --- a/library/main/src/com/android/car/setupwizardlib/BaseActivity.java +++ b/library/main/src/com/android/car/setupwizardlib/BaseActivity.java @@ -16,12 +16,12 @@ package com.android.car.setupwizardlib; -import android.annotation.CallSuper; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; +import androidx.annotation.CallSuper; import androidx.annotation.LayoutRes; import androidx.annotation.StyleRes; import androidx.annotation.VisibleForTesting; diff --git a/library/main/src/com/android/car/setupwizardlib/BaseSetupWizardActivity.java b/library/main/src/com/android/car/setupwizardlib/BaseSetupWizardActivity.java index 255f228..36caae0 100644 --- a/library/main/src/com/android/car/setupwizardlib/BaseSetupWizardActivity.java +++ b/library/main/src/com/android/car/setupwizardlib/BaseSetupWizardActivity.java @@ -16,12 +16,12 @@ package com.android.car.setupwizardlib; -import android.annotation.CallSuper; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; +import androidx.annotation.CallSuper; import androidx.annotation.LayoutRes; import androidx.annotation.StyleRes; import androidx.annotation.VisibleForTesting; diff --git a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardBaseLayout.java b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardBaseLayout.java index febb712..715315a 100644 --- a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardBaseLayout.java +++ b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardBaseLayout.java @@ -16,7 +16,6 @@ package com.android.car.setupwizardlib; -import android.annotation.Nullable; import android.content.Context; import android.content.res.ColorStateList; import android.content.res.TypedArray; @@ -41,6 +40,7 @@ import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.TextView; +import androidx.annotation.Nullable; import androidx.annotation.StyleRes; import androidx.annotation.VisibleForTesting; diff --git a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardCompatLayout.java b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardCompatLayout.java index 2d74aa9..f5191cc 100644 --- a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardCompatLayout.java +++ b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardCompatLayout.java @@ -16,10 +16,11 @@ package com.android.car.setupwizardlib; -import android.annotation.Nullable; import android.content.Context; import android.util.AttributeSet; +import androidx.annotation.Nullable; + /** * This layout applies light theming attributes from the partner overlay. It's functionally * equivalent to CarSetupWizardBaseLayout which is package-private. But in the future, it could be diff --git a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardDesignLayout.java b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardDesignLayout.java index 62e52d9..92269f0 100644 --- a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardDesignLayout.java +++ b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardDesignLayout.java @@ -16,10 +16,11 @@ package com.android.car.setupwizardlib; -import android.annotation.Nullable; import android.content.Context; import android.util.AttributeSet; +import androidx.annotation.Nullable; + import com.android.car.setupwizardlib.partner.PartnerConfig; import com.android.car.setupwizardlib.partner.PartnerConfigHelper; diff --git a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardLayout.java b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardLayout.java index 9d30220..19a1923 100644 --- a/library/main/src/com/android/car/setupwizardlib/CarSetupWizardLayout.java +++ b/library/main/src/com/android/car/setupwizardlib/CarSetupWizardLayout.java @@ -15,7 +15,6 @@ */ package com.android.car.setupwizardlib; -import android.annotation.Nullable; import android.content.Context; import android.content.res.TypedArray; import android.graphics.PorterDuff; @@ -40,6 +39,7 @@ import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.TextView; +import androidx.annotation.Nullable; import androidx.annotation.StyleRes; import androidx.annotation.VisibleForTesting; diff --git a/library/main/src/com/android/car/setupwizardlib/summary/PartnerSummaryActionsCollector.java b/library/main/src/com/android/car/setupwizardlib/summary/PartnerSummaryActionsCollector.java index 1291922..2dfb04b 100644 --- a/library/main/src/com/android/car/setupwizardlib/summary/PartnerSummaryActionsCollector.java +++ b/library/main/src/com/android/car/setupwizardlib/summary/PartnerSummaryActionsCollector.java @@ -17,7 +17,6 @@ package com.android.car.setupwizardlib.summary; -import android.annotation.Nullable; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; @@ -29,6 +28,8 @@ import android.os.Bundle; import android.text.TextUtils; import android.util.Log; +import androidx.annotation.Nullable; + import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; diff --git a/library/main/src/com/android/car/setupwizardlib/summary/SummaryAction.java b/library/main/src/com/android/car/setupwizardlib/summary/SummaryAction.java index aac4ce7..6f9e626 100644 --- a/library/main/src/com/android/car/setupwizardlib/summary/SummaryAction.java +++ b/library/main/src/com/android/car/setupwizardlib/summary/SummaryAction.java @@ -16,7 +16,7 @@ package com.android.car.setupwizardlib.summary; -import android.annotation.NonNull; +import androidx.annotation.NonNull; /** An instance that represents a single summary action item and all of its state. */ public class SummaryAction implements Comparable<SummaryAction> { diff --git a/library/main/tests/robotests/AndroidManifest.xml b/library/main/tests/robotests/AndroidManifest.xml index a0b00ba..4471c50 100644 --- a/library/main/tests/robotests/AndroidManifest.xml +++ b/library/main/tests/robotests/AndroidManifest.xml @@ -16,6 +16,6 @@ --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" - package="com.android.car.setupwizardlib.robotests"> + package="com.android.car.setupwizardlib.test"> </manifest> diff --git a/library/main/tests/robotests/src/com/android/car/setupwizardlib/BaseCompatActivityTest.java b/library/main/tests/robotests/src/com/android/car/setupwizardlib/BaseCompatActivityTest.java index 632ed6d..7209fc9 100644 --- a/library/main/tests/robotests/src/com/android/car/setupwizardlib/BaseCompatActivityTest.java +++ b/library/main/tests/robotests/src/com/android/car/setupwizardlib/BaseCompatActivityTest.java @@ -38,6 +38,7 @@ import androidx.fragment.app.Fragment; import com.android.car.setupwizardlib.robolectric.BaseRobolectricTest; import com.android.car.setupwizardlib.robolectric.TestHelper; import com.android.car.setupwizardlib.shadows.ShadowCar; +import com.android.car.setupwizardlib.test.R; import org.junit.Before; import org.junit.Test; diff --git a/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutAlternativeActivity.java b/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutAlternativeActivity.java index b20da7c..8fbe9e4 100644 --- a/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutAlternativeActivity.java +++ b/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutAlternativeActivity.java @@ -19,6 +19,8 @@ package com.android.car.setupwizardlib; import android.app.Activity; import android.os.Bundle; +import com.android.car.setupwizardlib.test.R; + /** * Activity for CarSetupWizardLayoutTest where primary button isn't shown but secondary button is. */ diff --git a/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutTestActivity.java b/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutTestActivity.java index 1894933..6350c44 100644 --- a/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutTestActivity.java +++ b/library/main/tests/robotests/src/com/android/car/setupwizardlib/CarSetupWizardLayoutTestActivity.java @@ -19,6 +19,8 @@ package com.android.car.setupwizardlib; import android.app.Activity; import android.os.Bundle; +import com.android.car.setupwizardlib.test.R; + /** * Activity for CarSetupWizardLayoutTest */ diff --git a/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarDrivingStateMonitorTest.java b/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarDrivingStateMonitorTest.java index 4d0f860..afa28f9 100644 --- a/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarDrivingStateMonitorTest.java +++ b/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarDrivingStateMonitorTest.java @@ -151,7 +151,8 @@ public class CarDrivingStateMonitorTest extends BaseRobolectricTest { ShadowCar.setIsConnected(true); mCarDrivingStateMonitor.stopMonitor(); mCarDrivingStateMonitor.startMonitor(); - assertThat(mCarDrivingStateMonitor.mHandler.hasMessagesOrCallbacks()).isFalse(); + assertThat(mCarDrivingStateMonitor.mHandler + .hasCallbacks(mCarDrivingStateMonitor.mDisconnectRunnable)).isFalse(); } @Test diff --git a/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarSetupWizardUiUtilsTest.java b/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarSetupWizardUiUtilsTest.java index 8ba08f3..bacb77a 100644 --- a/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarSetupWizardUiUtilsTest.java +++ b/library/main/tests/robotests/src/com/android/car/setupwizardlib/util/CarSetupWizardUiUtilsTest.java @@ -23,8 +23,7 @@ import android.graphics.Color; import android.view.View; import android.view.Window; -import com.android.car.setupwizardlib.robotests.R; -import com.android.internal.util.XmlUtils; +import com.android.car.setupwizardlib.test.R; import org.junit.Before; import org.junit.Test; @@ -57,8 +56,8 @@ public class CarSetupWizardUiUtilsTest { // Note that these colors are defined in the test theme private static final int TEST_THEME = R.style.NavAndStatusBarTestTheme; - private static final int EXPECTED_COLOR_STATUS_BAR = XmlUtils.convertValueToInt("#001", -1); - private static final int EXPECTED_COLOR_NAVIGATION_BAR = XmlUtils.convertValueToInt("#002", -1); + private static final int EXPECTED_COLOR_STATUS_BAR = Integer.decode("#001"); + private static final int EXPECTED_COLOR_NAVIGATION_BAR = Integer.decode("#002"); private Activity mActivity; private Window mWindow; |