From f91a1eba99ca39aaa4686e36fab13bb4c40b2ab9 Mon Sep 17 00:00:00 2001 From: haodong Date: Wed, 25 May 2022 13:04:44 -0700 Subject: [PATCH] Revert "[ChipGroup] Fix ChipGroup.getCheckedChipIds() returns wrong state" This reverts commit 0356d7c391c4aa64e54a5aa398d58def673d0114. --- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- .../google/android/material/chip/Chip.java | 30 +- .../material/appbar/MaterialToolbarTest.java | 2 +- .../material/badge/BadgeDrawableTest.java | 2 +- .../material/badge/BadgeUtilsTest.java | 2 +- .../BottomNavigationViewTest.java | 2 +- .../bottomsheet/BottomSheetBehaviorTest.java | 2 +- .../material/button/MaterialButtonTest.java | 2 +- .../button/MaterialButtonToggleGroupTest.java | 2 +- .../checkbox/MaterialCheckBoxTest.java | 2 +- .../android/material/chip/ChipGroupTest.java | 45 +-- .../android/material/chip/ChipTest.java | 2 +- .../material/color/DynamicColorsTest.java | 279 ------------------ .../material/color/MaterialColorsTest.java | 2 +- .../datepicker/CalendarStyleTest.java | 2 +- .../CompositeDateValidatorAnyTest.java | 2 +- .../CompositeDateValidatorTest.java | 2 +- .../DateValidatorPointBackwardTest.java | 2 +- .../DateValidatorPointForwardTest.java | 2 +- .../material/datepicker/MonthAdapterTest.java | 2 +- .../datepicker/MonthsPagerAdapterTest.java | 2 +- .../datepicker/RangeDateSelectorTest.java | 2 +- .../datepicker/SingleDateSelectorTest.java | 2 +- .../material/datepicker/UtcDatesTest.java | 2 +- .../MaterialDividerItemDecorationTest.java | 2 +- .../ElevationOverlayProviderTest.java | 2 +- .../ExtendedFloatingActionButtonTest.java | 2 +- .../floatingactionbutton/FabTest.java | 2 +- .../material/internal/ContextUtilsTest.java | 2 +- .../internal/ParcelableSparseArrayTest.java | 2 +- .../ParcelableSparseBooleanArrayTest.java | 2 +- .../ParcelableSparseIntArrayTest.java | 2 +- .../material/motion/MotionUtilsTest.java | 150 ---------- .../navigation/NavigationBarItemViewTest.java | 2 +- .../radiobutton/MaterialRadioButtonTest.java | 2 +- .../resources/MaterialResourcesTest.java | 2 +- .../material/resources/ResourceLoadTest.java | 2 +- .../shape/MaterialShapeDrawableTest.java | 2 +- .../shape/ShapeAppearanceModelTest.java | 2 +- .../slider/RangeSliderConfigTest.java | 2 +- .../material/slider/SliderConfigTest.java | 2 +- .../material/slider/SliderEventTest.java | 2 +- .../material/slider/SliderKeyTestCommon.java | 2 +- .../slider/SliderRoundingErrorTest.java | 2 +- .../material/slider/SliderStateTest.java | 2 +- .../material/slider/SliderTouchTest.java | 2 +- .../material/snackbar/SnackbarTest.java | 2 +- .../ExposedDropdownMenuAccessibilityTest.java | 2 +- .../TextInputLayoutAccessibilityTest.java | 90 ------ .../textview/MaterialTextViewTest.java | 2 +- .../theme/MaterialThemeOverlayTest.java | 2 +- .../android/material/theme/ThemeTest.java | 2 +- .../timepicker/ClockHandViewTouchTest.java | 2 +- .../TimePickerTextInputKeyControllerTest.java | 2 +- 55 files changed, 58 insertions(+), 636 deletions(-) delete mode 100644 lib/javatests/com/google/android/material/color/DynamicColorsTest.java delete mode 100644 lib/javatests/com/google/android/material/motion/MotionUtilsTest.java delete mode 100644 lib/javatests/com/google/android/material/textfield/TextInputLayoutAccessibilityTest.java diff --git a/build.gradle b/build.gradle index 52f66a2d7..dcd3a842e 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:4.0.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0892193d3..088a275f3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip diff --git a/lib/java/com/google/android/material/chip/Chip.java b/lib/java/com/google/android/material/chip/Chip.java index 53972da6b..c85dda446 100644 --- a/lib/java/com/google/android/material/chip/Chip.java +++ b/lib/java/com/google/android/material/chip/Chip.java @@ -16,7 +16,6 @@ package com.google.android.material.chip; -import android.widget.CompoundButton.OnCheckedChangeListener; import com.google.android.material.R; import static androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP; @@ -55,7 +54,6 @@ import android.view.ViewOutlineProvider; import android.view.ViewParent; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityNodeInfo; -import android.widget.CompoundButton; import androidx.annotation.AnimatorRes; import androidx.annotation.BoolRes; import androidx.annotation.CallSuper; @@ -153,7 +151,6 @@ public class Chip extends AppCompatCheckBox @Nullable private RippleDrawable ripple; @Nullable private OnClickListener onCloseIconClickListener; - @Nullable private CompoundButton.OnCheckedChangeListener onCheckedChangeListener; @Nullable private MaterialCheckable.OnCheckedChangeListener onCheckedChangeListenerInternal; private boolean deferredCheckedValue; private boolean closeIconPressed; @@ -254,19 +251,6 @@ public class Chip extends AppCompatCheckBox setMinHeight(minTouchTargetSize); } lastLayoutDirection = ViewCompat.getLayoutDirection(this); - - super.setOnCheckedChangeListener( - new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - if (onCheckedChangeListenerInternal != null) { - onCheckedChangeListenerInternal.onCheckedChanged(Chip.this, isChecked); - } - if (onCheckedChangeListener != null) { - onCheckedChangeListener.onCheckedChanged(buttonView, isChecked); - } - } - }); } @Override @@ -723,15 +707,15 @@ public class Chip extends AppCompatCheckBox // Defer the setChecked() call until after initialization. deferredCheckedValue = checked; } else if (chipDrawable.isCheckable()) { + boolean wasChecked = isChecked(); super.setChecked(checked); - } - } - @Override - public void setOnCheckedChangeListener( - @Nullable CompoundButton.OnCheckedChangeListener listener) { - // Do not call super here - the wrapped listener set in the constructor will call the listener. - onCheckedChangeListener = listener; + if (wasChecked != checked) { + if (onCheckedChangeListenerInternal != null) { + onCheckedChangeListenerInternal.onCheckedChanged(this, checked); + } + } + } } /** Register a callback to be invoked when the close icon is clicked. */ diff --git a/lib/javatests/com/google/android/material/appbar/MaterialToolbarTest.java b/lib/javatests/com/google/android/material/appbar/MaterialToolbarTest.java index ee4032ac1..2246da836 100644 --- a/lib/javatests/com/google/android/material/appbar/MaterialToolbarTest.java +++ b/lib/javatests/com/google/android/material/appbar/MaterialToolbarTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.appbar; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/badge/BadgeDrawableTest.java b/lib/javatests/com/google/android/material/badge/BadgeDrawableTest.java index a818ef4d2..942f986a5 100644 --- a/lib/javatests/com/google/android/material/badge/BadgeDrawableTest.java +++ b/lib/javatests/com/google/android/material/badge/BadgeDrawableTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.badge; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/badge/BadgeUtilsTest.java b/lib/javatests/com/google/android/material/badge/BadgeUtilsTest.java index 593e29fa8..d31197bfb 100644 --- a/lib/javatests/com/google/android/material/badge/BadgeUtilsTest.java +++ b/lib/javatests/com/google/android/material/badge/BadgeUtilsTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.badge; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/bottomnavigation/BottomNavigationViewTest.java b/lib/javatests/com/google/android/material/bottomnavigation/BottomNavigationViewTest.java index 5b39a921c..ab64b1fee 100644 --- a/lib/javatests/com/google/android/material/bottomnavigation/BottomNavigationViewTest.java +++ b/lib/javatests/com/google/android/material/bottomnavigation/BottomNavigationViewTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.bottomnavigation; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/bottomsheet/BottomSheetBehaviorTest.java b/lib/javatests/com/google/android/material/bottomsheet/BottomSheetBehaviorTest.java index e2896331e..a5bb0f956 100644 --- a/lib/javatests/com/google/android/material/bottomsheet/BottomSheetBehaviorTest.java +++ b/lib/javatests/com/google/android/material/bottomsheet/BottomSheetBehaviorTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.bottomsheet; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/button/MaterialButtonTest.java b/lib/javatests/com/google/android/material/button/MaterialButtonTest.java index d8107d067..6bca63763 100644 --- a/lib/javatests/com/google/android/material/button/MaterialButtonTest.java +++ b/lib/javatests/com/google/android/material/button/MaterialButtonTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.button; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/button/MaterialButtonToggleGroupTest.java b/lib/javatests/com/google/android/material/button/MaterialButtonToggleGroupTest.java index 5243dfd5d..e75983628 100644 --- a/lib/javatests/com/google/android/material/button/MaterialButtonToggleGroupTest.java +++ b/lib/javatests/com/google/android/material/button/MaterialButtonToggleGroupTest.java @@ -16,7 +16,7 @@ package com.google.android.material.button; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.view.View.GONE; import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; diff --git a/lib/javatests/com/google/android/material/checkbox/MaterialCheckBoxTest.java b/lib/javatests/com/google/android/material/checkbox/MaterialCheckBoxTest.java index b6ce903b0..5875705ce 100644 --- a/lib/javatests/com/google/android/material/checkbox/MaterialCheckBoxTest.java +++ b/lib/javatests/com/google/android/material/checkbox/MaterialCheckBoxTest.java @@ -16,7 +16,7 @@ package com.google.android.material.checkbox; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/chip/ChipGroupTest.java b/lib/javatests/com/google/android/material/chip/ChipGroupTest.java index 76b272af1..a0b43b679 100644 --- a/lib/javatests/com/google/android/material/chip/ChipGroupTest.java +++ b/lib/javatests/com/google/android/material/chip/ChipGroupTest.java @@ -15,9 +15,8 @@ */ package com.google.android.material.chip; -import com.google.android.material.test.R; +import com.google.android.material.R; -import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -25,7 +24,6 @@ import static org.junit.Assert.assertTrue; import android.content.Context; import androidx.appcompat.app.AppCompatActivity; import android.view.View; -import android.widget.CompoundButton; import androidx.core.view.ViewCompat; import androidx.core.view.accessibility.AccessibilityNodeInfoCompat; import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.CollectionInfoCompat; @@ -198,29 +196,6 @@ public class ChipGroupTest { assertThat(checkedIds).contains(second.getId()); } - @Test - public void multipleSelection_chipListener() { - chipgroup.setSingleSelection(false); - - Chip first = (Chip) chipgroup.getChildAt(0); - first.setOnCheckedChangeListener(this::onChipCheckedStateChanged); - - Chip second = (Chip) chipgroup.getChildAt(1); - second.setOnCheckedChangeListener(this::onChipCheckedStateChanged); - - first.performClick(); - getInstrumentation().waitForIdleSync(); - - assertThat(checkedChangeCallCount).isEqualTo(1); - assertThat(checkedIds).containsExactly(first.getId()); - - second.performClick(); - getInstrumentation().waitForIdleSync(); - - assertThat(checkedChangeCallCount).isEqualTo(2); - assertThat(checkedIds).containsExactly(first.getId(), second.getId()); - } - @Test public void multiSelection_withSelectionRequired_unSelectsIfTwo() { chipgroup.setSingleSelection(false); @@ -285,22 +260,4 @@ public class ChipGroupTest { assertEquals(1, itemInfo.getRowIndex()); assertTrue(itemInfo.isSelected()); } - - @Test - public void getChipAccessibilityClassName_multipleChecked_buttonName() { - Chip chip = (Chip) chipgroup.getChildAt(0); - assertEquals("android.widget.Button", chip.getAccessibilityClassName().toString()); - } - - @Test - public void getChipAccessibilityClassName_singleChecked_radioButtonName() { - chipgroup.setSingleSelection(true); - Chip chip = (Chip) chipgroup.getChildAt(0); - assertEquals("android.widget.RadioButton", chip.getAccessibilityClassName().toString()); - } - - private void onChipCheckedStateChanged(CompoundButton chip, boolean checked) { - checkedChangeCallCount++; - checkedIds = chipgroup.getCheckedChipIds(); - } } diff --git a/lib/javatests/com/google/android/material/chip/ChipTest.java b/lib/javatests/com/google/android/material/chip/ChipTest.java index e5ed1f5a3..c3c5a6157 100644 --- a/lib/javatests/com/google/android/material/chip/ChipTest.java +++ b/lib/javatests/com/google/android/material/chip/ChipTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.chip; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.android.material.internal.ViewUtils.dpToPx; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/color/DynamicColorsTest.java b/lib/javatests/com/google/android/material/color/DynamicColorsTest.java deleted file mode 100644 index cf6f79427..000000000 --- a/lib/javatests/com/google/android/material/color/DynamicColorsTest.java +++ /dev/null @@ -1,279 +0,0 @@ -/* - * Copyright (C) 2022 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.google.android.material.color; - -import com.google.android.material.test.R; - -import static androidx.test.core.app.ApplicationProvider.getApplicationContext; -import static com.google.common.truth.Truth.assertThat; - -import android.app.Activity; -import android.app.Application; -import android.content.Context; -import android.os.Build; -import android.os.Build.VERSION_CODES; -import android.os.Bundle; -import androidx.appcompat.view.ContextThemeWrapper; -import com.google.android.material.color.DynamicColors.Precondition; -import com.google.android.material.resources.MaterialAttributes; -import com.google.common.collect.ImmutableList; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.ParameterizedRobolectricTestRunner; -import org.robolectric.ParameterizedRobolectricTestRunner.Parameter; -import org.robolectric.ParameterizedRobolectricTestRunner.Parameters; -import org.robolectric.Robolectric; -import org.robolectric.shadow.api.Shadow; -import org.robolectric.shadows.ShadowContextThemeWrapper; -import org.robolectric.util.ReflectionHelpers; - -/** Tests the logic of {@link com.google.android.material.color.DynamicColors} utility class. */ -@RunWith(ParameterizedRobolectricTestRunner.class) -public class DynamicColorsTest { - @Parameter(0) - public String testName; - - @Parameter(1) - public int baseTheme; - - private final MockApplication mockApplication = new MockApplication(); - - private Activity mockActivity; - - @Parameters(name = "{0}") - public static ImmutableList getTestData() { - return ImmutableList.builder() - .add(new Object[] {"Test dynamic colors with Light Theme", R.style.Theme_Material3_Light}) - .build(); - } - - @Before - public void prepareTestActivity() { - setDynamicColorAvailability(true); - setSdkVersion(VERSION_CODES.S); - mockActivity = Robolectric.buildActivity(Activity.class).get(); - mockActivity.setTheme(baseTheme); - } - - @Test - public void testApplyOnApplicationWithDefaultTheme() { - DynamicColors.applyToActivitiesIfAvailable(mockApplication); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithCustomTheme() { - final int mockThemeOverlay = 0xABCDABCD; - DynamicColors.applyToActivitiesIfAvailable(mockApplication, mockThemeOverlay); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithPreconditionFalse() { - final MockPrecondition mockPrecondition = new MockPrecondition(); - DynamicColors.applyToActivitiesIfAvailable(mockApplication, mockPrecondition); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithPreconditionTrue() { - final MockPrecondition mockPrecondition = new MockPrecondition(); - mockPrecondition.shouldApplyDynamicColors = true; - DynamicColors.applyToActivitiesIfAvailable(mockApplication, mockPrecondition); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithCustomThemeAndPrecondition() { - final int mockThemeOverlay = 0xABCDABCD; - final MockPrecondition mockPrecondition = new MockPrecondition(); - mockPrecondition.shouldApplyDynamicColors = true; - DynamicColors.applyToActivitiesIfAvailable( - mockApplication, mockThemeOverlay, mockPrecondition); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithNoDynamicColorAvailable() { - setDynamicColorAvailability(false); - final int mockThemeOverlay = 0xABCDABCD; - final MockPrecondition mockPrecondition = new MockPrecondition(); - mockPrecondition.shouldApplyDynamicColors = true; - DynamicColors.applyToActivitiesIfAvailable( - mockApplication, mockThemeOverlay, mockPrecondition); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnApplicationWithLowSdkVersion() { - setSdkVersion(VERSION_CODES.Q); - final int mockThemeOverlay = 0xABCDABCD; - final MockPrecondition mockPrecondition = new MockPrecondition(); - mockPrecondition.shouldApplyDynamicColors = true; - DynamicColors.applyToActivitiesIfAvailable( - mockApplication, mockThemeOverlay, mockPrecondition); - mockApplication.capturedCallbacks.onActivityPreCreated(mockActivity, new Bundle()); - - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnActivityWithDefaultTheme() { - DynamicColors.applyIfAvailable(mockActivity); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnActivityWithCustomTheme() { - final int mockThemeOverlay = 0xABCDABCD; - DynamicColors.applyIfAvailable(mockActivity, mockThemeOverlay); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnActivityWithPreconditionFalse() { - final MockPrecondition mockPrecondition = new MockPrecondition(); - DynamicColors.applyIfAvailable(mockActivity, mockPrecondition); - - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnActivityWithPreconditionTrue() { - final MockPrecondition mockPrecondition = new MockPrecondition(); - mockPrecondition.shouldApplyDynamicColors = true; - DynamicColors.applyIfAvailable(mockActivity, mockPrecondition); - - // TODO(b/230848477): Update tests to make sure dynamic colors theme overlay is indeed applied. - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testApplyOnActivityWithNoDynamicColorAvailable() { - setDynamicColorAvailability(false); - final int mockThemeOverlay = 0xABCDABCD; - DynamicColors.applyIfAvailable(mockActivity, mockThemeOverlay); - - assertThat(getThemeResId(mockActivity)).isEqualTo(baseTheme); - } - - @Test - public void testIsDynamicColorAvailable() { - setDynamicColorAvailability(true); - setSdkVersion(VERSION_CODES.S); - assertThat(DynamicColors.isDynamicColorAvailable()).isTrue(); - } - - @Test - public void testIsDynamicColorAvailableWithNoDynamicColorAvailable() { - setDynamicColorAvailability(false); - assertThat(DynamicColors.isDynamicColorAvailable()).isFalse(); - } - - @Test - public void testIsDynamicColorAvailableWithLowSdkVersion() { - setSdkVersion(VERSION_CODES.Q); - assertThat(DynamicColors.isDynamicColorAvailable()).isFalse(); - } - - @Test - public void testWrapContextWithDefaultTheme() { - Context context = DynamicColors.wrapContextIfAvailable(mockActivity); - - assertThat(getThemeResId(context)) - .isEqualTo(resolveAttribute(baseTheme, R.attr.dynamicColorThemeOverlay)); - } - - @Test - public void testWrapContextWithCustomTheme() { - final int mockThemeOverlay = 0xABCDABCD; - Context context = DynamicColors.wrapContextIfAvailable(mockActivity, mockThemeOverlay); - - assertThat(getThemeResId(context)).isEqualTo(mockThemeOverlay); - } - - @Test - public void testWrapContextWithNoDynamicColorAvailable() { - setDynamicColorAvailability(false); - final int mockThemeOverlay = 0xABCDABCD; - Context context = DynamicColors.wrapContextIfAvailable(mockActivity, mockThemeOverlay); - - assertThat(getThemeResId(context)).isEqualTo(baseTheme); - } - - private void setDynamicColorAvailability(boolean available) { - ReflectionHelpers.setStaticField( - Build.class, "MANUFACTURER", available ? "Google" : "Unsupported OEM"); - } - - private void setSdkVersion(int sdkVersion) { - ReflectionHelpers.setStaticField( - Build.VERSION.class, "SDK_INT", sdkVersion); - } - - @SuppressWarnings("RestrictTo") - private static int resolveAttribute(int theme, int attribute) { - return MaterialAttributes.resolveOrThrow( - new ContextThemeWrapper(getApplicationContext(), theme), - attribute, - "missing in theme"); - } - - private static int getThemeResId(Context activity) { - ShadowContextThemeWrapper shadowContextThemeWrapper = Shadow.extract(activity); - return shadowContextThemeWrapper.callGetThemeResId(); - } - - private static class MockApplication extends Application { - private ActivityLifecycleCallbacks capturedCallbacks; - - @Override - public void registerActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback) { - capturedCallbacks = callback; - } - } - - private static class MockPrecondition implements Precondition { - private boolean shouldApplyDynamicColors; - - @Override - public boolean shouldApplyDynamicColors(Activity activity, int theme) { - return shouldApplyDynamicColors; - } - } -} diff --git a/lib/javatests/com/google/android/material/color/MaterialColorsTest.java b/lib/javatests/com/google/android/material/color/MaterialColorsTest.java index a24c095f6..5450e0000 100644 --- a/lib/javatests/com/google/android/material/color/MaterialColorsTest.java +++ b/lib/javatests/com/google/android/material/color/MaterialColorsTest.java @@ -16,7 +16,7 @@ package com.google.android.material.color; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/CalendarStyleTest.java b/lib/javatests/com/google/android/material/datepicker/CalendarStyleTest.java index dea5aad32..28ee4c708 100644 --- a/lib/javatests/com/google/android/material/datepicker/CalendarStyleTest.java +++ b/lib/javatests/com/google/android/material/datepicker/CalendarStyleTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.junit.Assert.assertEquals; diff --git a/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorAnyTest.java b/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorAnyTest.java index 6ae8da1f8..e8968b990 100644 --- a/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorAnyTest.java +++ b/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorAnyTest.java @@ -16,7 +16,7 @@ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorTest.java b/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorTest.java index 170fd82fe..5e71575b1 100644 --- a/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorTest.java +++ b/lib/javatests/com/google/android/material/datepicker/CompositeDateValidatorTest.java @@ -16,7 +16,7 @@ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/DateValidatorPointBackwardTest.java b/lib/javatests/com/google/android/material/datepicker/DateValidatorPointBackwardTest.java index d58500d69..0af517c41 100644 --- a/lib/javatests/com/google/android/material/datepicker/DateValidatorPointBackwardTest.java +++ b/lib/javatests/com/google/android/material/datepicker/DateValidatorPointBackwardTest.java @@ -16,7 +16,7 @@ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/DateValidatorPointForwardTest.java b/lib/javatests/com/google/android/material/datepicker/DateValidatorPointForwardTest.java index 02ad41d6f..424899728 100644 --- a/lib/javatests/com/google/android/material/datepicker/DateValidatorPointForwardTest.java +++ b/lib/javatests/com/google/android/material/datepicker/DateValidatorPointForwardTest.java @@ -16,7 +16,7 @@ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/MonthAdapterTest.java b/lib/javatests/com/google/android/material/datepicker/MonthAdapterTest.java index 9dcd5f4b5..2ca42ab34 100644 --- a/lib/javatests/com/google/android/material/datepicker/MonthAdapterTest.java +++ b/lib/javatests/com/google/android/material/datepicker/MonthAdapterTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; diff --git a/lib/javatests/com/google/android/material/datepicker/MonthsPagerAdapterTest.java b/lib/javatests/com/google/android/material/datepicker/MonthsPagerAdapterTest.java index 531ebe756..33ed4ed03 100644 --- a/lib/javatests/com/google/android/material/datepicker/MonthsPagerAdapterTest.java +++ b/lib/javatests/com/google/android/material/datepicker/MonthsPagerAdapterTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.junit.Assert.assertEquals; diff --git a/lib/javatests/com/google/android/material/datepicker/RangeDateSelectorTest.java b/lib/javatests/com/google/android/material/datepicker/RangeDateSelectorTest.java index 4b11d9833..8a8dc0425 100644 --- a/lib/javatests/com/google/android/material/datepicker/RangeDateSelectorTest.java +++ b/lib/javatests/com/google/android/material/datepicker/RangeDateSelectorTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/datepicker/SingleDateSelectorTest.java b/lib/javatests/com/google/android/material/datepicker/SingleDateSelectorTest.java index 7e9914d1c..87c1d63ae 100644 --- a/lib/javatests/com/google/android/material/datepicker/SingleDateSelectorTest.java +++ b/lib/javatests/com/google/android/material/datepicker/SingleDateSelectorTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.hamcrest.core.Is.is; import static org.hamcrest.core.IsNull.nullValue; diff --git a/lib/javatests/com/google/android/material/datepicker/UtcDatesTest.java b/lib/javatests/com/google/android/material/datepicker/UtcDatesTest.java index 54c34a4c5..76d849d41 100644 --- a/lib/javatests/com/google/android/material/datepicker/UtcDatesTest.java +++ b/lib/javatests/com/google/android/material/datepicker/UtcDatesTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.datepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.junit.Assert.assertEquals; diff --git a/lib/javatests/com/google/android/material/divider/MaterialDividerItemDecorationTest.java b/lib/javatests/com/google/android/material/divider/MaterialDividerItemDecorationTest.java index 46a66e140..df036e65c 100644 --- a/lib/javatests/com/google/android/material/divider/MaterialDividerItemDecorationTest.java +++ b/lib/javatests/com/google/android/material/divider/MaterialDividerItemDecorationTest.java @@ -16,7 +16,7 @@ package com.google.android.material.divider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/elevation/ElevationOverlayProviderTest.java b/lib/javatests/com/google/android/material/elevation/ElevationOverlayProviderTest.java index d1527e05c..dd907e15a 100644 --- a/lib/javatests/com/google/android/material/elevation/ElevationOverlayProviderTest.java +++ b/lib/javatests/com/google/android/material/elevation/ElevationOverlayProviderTest.java @@ -16,7 +16,7 @@ package com.google.android.material.elevation; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/floatingactionbutton/ExtendedFloatingActionButtonTest.java b/lib/javatests/com/google/android/material/floatingactionbutton/ExtendedFloatingActionButtonTest.java index 8739991e4..55d06ed35 100644 --- a/lib/javatests/com/google/android/material/floatingactionbutton/ExtendedFloatingActionButtonTest.java +++ b/lib/javatests/com/google/android/material/floatingactionbutton/ExtendedFloatingActionButtonTest.java @@ -16,7 +16,7 @@ package com.google.android.material.floatingactionbutton; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Build.VERSION_CODES.LOLLIPOP; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/floatingactionbutton/FabTest.java b/lib/javatests/com/google/android/material/floatingactionbutton/FabTest.java index 359983807..88a81e954 100644 --- a/lib/javatests/com/google/android/material/floatingactionbutton/FabTest.java +++ b/lib/javatests/com/google/android/material/floatingactionbutton/FabTest.java @@ -16,7 +16,7 @@ package com.google.android.material.floatingactionbutton; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Build.VERSION_CODES.LOLLIPOP; import static com.google.android.material.floatingactionbutton.FloatingActionButton.SIZE_MINI; diff --git a/lib/javatests/com/google/android/material/internal/ContextUtilsTest.java b/lib/javatests/com/google/android/material/internal/ContextUtilsTest.java index 651ae042a..2058e9d2f 100644 --- a/lib/javatests/com/google/android/material/internal/ContextUtilsTest.java +++ b/lib/javatests/com/google/android/material/internal/ContextUtilsTest.java @@ -16,7 +16,7 @@ package com.google.android.material.internal; -import com.google.android.material.test.R; +import com.google.android.material.R; import android.app.Activity; import android.content.ContextWrapper; diff --git a/lib/javatests/com/google/android/material/internal/ParcelableSparseArrayTest.java b/lib/javatests/com/google/android/material/internal/ParcelableSparseArrayTest.java index 4ccf98053..d97fe3417 100644 --- a/lib/javatests/com/google/android/material/internal/ParcelableSparseArrayTest.java +++ b/lib/javatests/com/google/android/material/internal/ParcelableSparseArrayTest.java @@ -16,7 +16,7 @@ package com.google.android.material.internal; -import com.google.android.material.test.R; +import com.google.android.material.R; import android.os.Bundle; import android.os.Parcel; diff --git a/lib/javatests/com/google/android/material/internal/ParcelableSparseBooleanArrayTest.java b/lib/javatests/com/google/android/material/internal/ParcelableSparseBooleanArrayTest.java index 32743b191..6597a2e92 100644 --- a/lib/javatests/com/google/android/material/internal/ParcelableSparseBooleanArrayTest.java +++ b/lib/javatests/com/google/android/material/internal/ParcelableSparseBooleanArrayTest.java @@ -16,7 +16,7 @@ package com.google.android.material.internal; -import com.google.android.material.test.R; +import com.google.android.material.R; import android.os.Parcel; import org.junit.Assert; diff --git a/lib/javatests/com/google/android/material/internal/ParcelableSparseIntArrayTest.java b/lib/javatests/com/google/android/material/internal/ParcelableSparseIntArrayTest.java index 6ed59b647..e55abfd50 100644 --- a/lib/javatests/com/google/android/material/internal/ParcelableSparseIntArrayTest.java +++ b/lib/javatests/com/google/android/material/internal/ParcelableSparseIntArrayTest.java @@ -16,7 +16,7 @@ package com.google.android.material.internal; -import com.google.android.material.test.R; +import com.google.android.material.R; import android.os.Parcel; import org.junit.Assert; diff --git a/lib/javatests/com/google/android/material/motion/MotionUtilsTest.java b/lib/javatests/com/google/android/material/motion/MotionUtilsTest.java deleted file mode 100644 index ca488039e..000000000 --- a/lib/javatests/com/google/android/material/motion/MotionUtilsTest.java +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Copyright (C) 2022 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.google.android.material.motion; - -import com.google.android.material.test.R; - -import static com.google.common.truth.Truth.assertThat; - -import android.animation.TimeInterpolator; -import android.os.Build.VERSION_CODES; -import androidx.appcompat.app.AppCompatActivity; -import android.view.animation.Interpolator; -import android.view.animation.LinearInterpolator; -import android.view.animation.PathInterpolator; -import androidx.annotation.RequiresApi; -import androidx.test.core.app.ApplicationProvider; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.ExpectedException; -import org.junit.runner.RunWith; -import org.robolectric.Robolectric; -import org.robolectric.RobolectricTestRunner; -import org.robolectric.android.controller.ActivityController; -import org.robolectric.annotation.Config; -import org.robolectric.annotation.internal.DoNotInstrument; - -@RunWith(RobolectricTestRunner.class) -@Config(sdk = VERSION_CODES.LOLLIPOP) -@DoNotInstrument -@RequiresApi(api = VERSION_CODES.LOLLIPOP) -public class MotionUtilsTest { - - private ActivityController activityController; - - @Rule public final ExpectedException thrown = ExpectedException.none(); - - @Test - public void testResolvesThemeInterpolator() { - assertThemeInterpolatorIsInstanceOf( - R.style.Theme_Material3_DayNight, - R.attr.motionEasingStandardInterpolator, - LinearInterpolator.class); - } - - @Test - public void testCustomInterpolator_resolvesThemeInterpolator() { - assertThemeInterpolatorIsInstanceOf( - R.style.Theme_Material3_DayNight_CustomInterpolator, - R.attr.motionEasingStandardInterpolator, - LinearInterpolator.class); - } - - @Test - public void testCustomAnimInterpolator_resolvesThemeInterpolator() { - assertThemeInterpolatorIsInstanceOf( - R.style.Theme_Material3_DayNight_CustomAnimInterpolator, - R.attr.motionEasingStandardInterpolator, - LinearInterpolator.class); - } - - @Test - public void testResolvesLegacyInterpolator() { - assertThemeInterpolatorIsInstanceOf( - R.style.Theme_Material3_DayNight, R.attr.motionEasingStandard, PathInterpolator.class); - } - - @Test - public void testMaterialComponentsTheme_resolveUnavailableInterpolatorReturnsDefault() { - createActivityAndSetTheme(R.style.Theme_MaterialComponents_DayNight); - - DefaultDummyInterpolator defaultInterpolator = new DefaultDummyInterpolator(); - TimeInterpolator standardInterpolator = - MotionUtils.resolveThemeInterpolator( - activityController.get().getApplicationContext(), - R.attr.motionEasingStandardInterpolator, - defaultInterpolator); - assertThat(standardInterpolator).isEqualTo(defaultInterpolator); - } - - @Test - public void testMaterialComponentsTheme_resolvesLegacyInterpolator() { - assertThemeInterpolatorIsInstanceOf( - R.style.Theme_MaterialComponents_DayNight, - R.attr.motionEasingStandard, - PathInterpolator.class); - } - - @Test - public void testMaterialComponentsThemeIncorrectLegacyAttrType_shouldThrowException() { - createActivityAndSetTheme( - R.style.Theme_MaterialComponents_DayNight_IncorrectLegacyEasingAttrType); - - // ThrowingRunnable used by assertThrows is not available until gradle 4.13 - thrown.expect(IllegalArgumentException.class); - MotionUtils.resolveThemeInterpolator( - activityController.get().getApplicationContext(), - R.attr.motionEasingStandard, - new DefaultDummyInterpolator()); - } - - @Test - public void testMaterialComponentsThemeIncorrectLegacyFormatting_shouldThrowException() { - createActivityAndSetTheme( - R.style.Theme_MaterialComponents_DayNight_IncorrectLegacyEasingFormat); - - // ThrowingRunnable used by assertThrows is not available until gradle 4.13 - thrown.expect(IllegalArgumentException.class); - MotionUtils.resolveThemeInterpolator( - activityController.get().getApplicationContext(), - R.attr.motionEasingStandard, - new DefaultDummyInterpolator()); - } - - private void createActivityAndSetTheme(int themeId) { - ApplicationProvider.getApplicationContext().setTheme(themeId); - activityController = Robolectric.buildActivity(AppCompatActivity.class).create(); - } - - private void assertThemeInterpolatorIsInstanceOf(int theme, int attrId, Class expectedClass) { - createActivityAndSetTheme(theme); - DefaultDummyInterpolator defaultInterpolator = new DefaultDummyInterpolator(); - TimeInterpolator themeInterpolator = - MotionUtils.resolveThemeInterpolator( - activityController.get().getApplicationContext(), attrId, defaultInterpolator); - assertThat(themeInterpolator).isNotEqualTo(defaultInterpolator); - // Robolectric's shadow of Android's AnimationUtils always returns a LinearInterpolator. - assertThat(themeInterpolator).isInstanceOf(expectedClass); - } - - private static class DefaultDummyInterpolator implements Interpolator { - @Override - public float getInterpolation(float input) { - return 0; - } - } -} diff --git a/lib/javatests/com/google/android/material/navigation/NavigationBarItemViewTest.java b/lib/javatests/com/google/android/material/navigation/NavigationBarItemViewTest.java index 238fd18f8..ba96488a1 100644 --- a/lib/javatests/com/google/android/material/navigation/NavigationBarItemViewTest.java +++ b/lib/javatests/com/google/android/material/navigation/NavigationBarItemViewTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.navigation; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Build.VERSION_CODES.O; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/radiobutton/MaterialRadioButtonTest.java b/lib/javatests/com/google/android/material/radiobutton/MaterialRadioButtonTest.java index b34b4cf90..b0d841f2b 100644 --- a/lib/javatests/com/google/android/material/radiobutton/MaterialRadioButtonTest.java +++ b/lib/javatests/com/google/android/material/radiobutton/MaterialRadioButtonTest.java @@ -16,7 +16,7 @@ package com.google.android.material.radiobutton; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/resources/MaterialResourcesTest.java b/lib/javatests/com/google/android/material/resources/MaterialResourcesTest.java index ef1f1a8ab..21ecc20c1 100644 --- a/lib/javatests/com/google/android/material/resources/MaterialResourcesTest.java +++ b/lib/javatests/com/google/android/material/resources/MaterialResourcesTest.java @@ -16,7 +16,7 @@ package com.google.android.material.resources; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.content.Context.WINDOW_SERVICE; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/resources/ResourceLoadTest.java b/lib/javatests/com/google/android/material/resources/ResourceLoadTest.java index 10ad80cfa..58f11089b 100644 --- a/lib/javatests/com/google/android/material/resources/ResourceLoadTest.java +++ b/lib/javatests/com/google/android/material/resources/ResourceLoadTest.java @@ -16,7 +16,7 @@ package com.google.android.material.resources; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.junit.Assert.assertEquals; diff --git a/lib/javatests/com/google/android/material/shape/MaterialShapeDrawableTest.java b/lib/javatests/com/google/android/material/shape/MaterialShapeDrawableTest.java index 5f14eff54..ba9e2da18 100644 --- a/lib/javatests/com/google/android/material/shape/MaterialShapeDrawableTest.java +++ b/lib/javatests/com/google/android/material/shape/MaterialShapeDrawableTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.shape; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/shape/ShapeAppearanceModelTest.java b/lib/javatests/com/google/android/material/shape/ShapeAppearanceModelTest.java index 134e942c4..9d114b4cc 100644 --- a/lib/javatests/com/google/android/material/shape/ShapeAppearanceModelTest.java +++ b/lib/javatests/com/google/android/material/shape/ShapeAppearanceModelTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.shape; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/slider/RangeSliderConfigTest.java b/lib/javatests/com/google/android/material/slider/RangeSliderConfigTest.java index 96396504f..fabf9df41 100644 --- a/lib/javatests/com/google/android/material/slider/RangeSliderConfigTest.java +++ b/lib/javatests/com/google/android/material/slider/RangeSliderConfigTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Looper.getMainLooper; import static com.google.android.material.slider.BaseSlider.UNIT_PX; diff --git a/lib/javatests/com/google/android/material/slider/SliderConfigTest.java b/lib/javatests/com/google/android/material/slider/SliderConfigTest.java index eaad074ea..4f208d030 100644 --- a/lib/javatests/com/google/android/material/slider/SliderConfigTest.java +++ b/lib/javatests/com/google/android/material/slider/SliderConfigTest.java @@ -15,7 +15,7 @@ */ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.robolectric.annotation.LooperMode.Mode.LEGACY; diff --git a/lib/javatests/com/google/android/material/slider/SliderEventTest.java b/lib/javatests/com/google/android/material/slider/SliderEventTest.java index 52f506cec..d613e5281 100644 --- a/lib/javatests/com/google/android/material/slider/SliderEventTest.java +++ b/lib/javatests/com/google/android/material/slider/SliderEventTest.java @@ -16,7 +16,7 @@ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.android.material.slider.SliderHelper.dragSliderBetweenValues; import static com.google.android.material.slider.SliderHelper.touchSliderAtValue; diff --git a/lib/javatests/com/google/android/material/slider/SliderKeyTestCommon.java b/lib/javatests/com/google/android/material/slider/SliderKeyTestCommon.java index ee62c6f56..612f4b7a0 100644 --- a/lib/javatests/com/google/android/material/slider/SliderKeyTestCommon.java +++ b/lib/javatests/com/google/android/material/slider/SliderKeyTestCommon.java @@ -16,7 +16,7 @@ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.android.material.slider.SliderHelper.clickDpadCenter; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/slider/SliderRoundingErrorTest.java b/lib/javatests/com/google/android/material/slider/SliderRoundingErrorTest.java index 5a2b443f0..d7479b2c8 100644 --- a/lib/javatests/com/google/android/material/slider/SliderRoundingErrorTest.java +++ b/lib/javatests/com/google/android/material/slider/SliderRoundingErrorTest.java @@ -16,7 +16,7 @@ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.android.material.slider.SliderHelper.touchSliderAtValue; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/slider/SliderStateTest.java b/lib/javatests/com/google/android/material/slider/SliderStateTest.java index 49493b163..bf986653a 100644 --- a/lib/javatests/com/google/android/material/slider/SliderStateTest.java +++ b/lib/javatests/com/google/android/material/slider/SliderStateTest.java @@ -16,7 +16,7 @@ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/slider/SliderTouchTest.java b/lib/javatests/com/google/android/material/slider/SliderTouchTest.java index d76f63ed9..1722d7081 100644 --- a/lib/javatests/com/google/android/material/slider/SliderTouchTest.java +++ b/lib/javatests/com/google/android/material/slider/SliderTouchTest.java @@ -16,7 +16,7 @@ package com.google.android.material.slider; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.android.material.slider.SliderHelper.calculateXPositionFromValue; import static com.google.android.material.slider.SliderHelper.dragSliderBetweenValues; diff --git a/lib/javatests/com/google/android/material/snackbar/SnackbarTest.java b/lib/javatests/com/google/android/material/snackbar/SnackbarTest.java index be3ea5f41..7060c243f 100644 --- a/lib/javatests/com/google/android/material/snackbar/SnackbarTest.java +++ b/lib/javatests/com/google/android/material/snackbar/SnackbarTest.java @@ -16,7 +16,7 @@ package com.google.android.material.snackbar; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Build.VERSION_CODES.JELLY_BEAN; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/textfield/ExposedDropdownMenuAccessibilityTest.java b/lib/javatests/com/google/android/material/textfield/ExposedDropdownMenuAccessibilityTest.java index 91c4b3852..f33ffa9e2 100644 --- a/lib/javatests/com/google/android/material/textfield/ExposedDropdownMenuAccessibilityTest.java +++ b/lib/javatests/com/google/android/material/textfield/ExposedDropdownMenuAccessibilityTest.java @@ -16,7 +16,7 @@ package com.google.android.material.textfield; -import com.google.android.material.test.R; +import com.google.android.material.R; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.Is.is; diff --git a/lib/javatests/com/google/android/material/textfield/TextInputLayoutAccessibilityTest.java b/lib/javatests/com/google/android/material/textfield/TextInputLayoutAccessibilityTest.java deleted file mode 100644 index f17bfede2..000000000 --- a/lib/javatests/com/google/android/material/textfield/TextInputLayoutAccessibilityTest.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (C) 2022 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.google.android.material.textfield; - -import com.google.android.material.test.R; - -import static com.google.android.material.textfield.TextInputLayout.END_ICON_CUSTOM; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.core.Is.is; - -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import androidx.appcompat.app.AppCompatActivity; -import android.view.View; -import android.view.View.OnClickListener; -import android.view.ViewGroup; -import androidx.test.core.app.ApplicationProvider; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.robolectric.Robolectric; -import org.robolectric.RobolectricTestRunner; - -@RunWith(RobolectricTestRunner.class) -public final class TextInputLayoutAccessibilityTest { - - private TextInputLayout textInputLayout; - private final OnClickListener onClickListener = - new OnClickListener() { - @Override - public void onClick(View v) { - /* Do something */ - } - }; - - @Before - public void themeApplicationContext() { - ApplicationProvider.getApplicationContext() - .setTheme(R.style.Theme_Material3_DayNight_NoActionBar); - AppCompatActivity activity = Robolectric.buildActivity(AppCompatActivity.class).setup().get(); - View inflated = activity.getLayoutInflater().inflate(R.layout.test_text_input_layout, null); - ((ViewGroup) activity.findViewById(android.R.id.content)).addView(inflated); - textInputLayout = inflated.findViewById(R.id.text_input_layout); - } - - @Test - public void testPasswordEndIcon_importantForA11y() { - textInputLayout.setEndIconMode(TextInputLayout.END_ICON_PASSWORD_TOGGLE); - - assertThat(textInputLayout.getEndIconView().isImportantForAccessibility(), is(true)); - } - - @Test - public void testClearTextEndIcon_importantForA11y() { - textInputLayout.setEndIconMode(TextInputLayout.END_ICON_CLEAR_TEXT); - - assertThat(textInputLayout.getEndIconView().isImportantForAccessibility(), is(true)); - } - - @Test - public void testClickableCustomEndIcon_importantForA11y() { - textInputLayout.setEndIconMode(END_ICON_CUSTOM); - textInputLayout.setEndIconDrawable(new ColorDrawable(Color.GREEN)); - textInputLayout.setEndIconOnClickListener(onClickListener); - - assertThat(textInputLayout.getEndIconView().isImportantForAccessibility(), is(true)); - } - - @Test - public void testNonClickableCustomEndIcon_notImportantForA11y() { - textInputLayout.setEndIconMode(END_ICON_CUSTOM); - textInputLayout.setEndIconDrawable(new ColorDrawable(Color.GREEN)); - - assertThat(textInputLayout.getEndIconView().isImportantForAccessibility(), is(false)); - } -} diff --git a/lib/javatests/com/google/android/material/textview/MaterialTextViewTest.java b/lib/javatests/com/google/android/material/textview/MaterialTextViewTest.java index 19e7ccbcf..32c06087e 100644 --- a/lib/javatests/com/google/android/material/textview/MaterialTextViewTest.java +++ b/lib/javatests/com/google/android/material/textview/MaterialTextViewTest.java @@ -16,7 +16,7 @@ package com.google.android.material.textview; -import com.google.android.material.test.R; +import com.google.android.material.R; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/theme/MaterialThemeOverlayTest.java b/lib/javatests/com/google/android/material/theme/MaterialThemeOverlayTest.java index fabcafd0e..730f5fe3e 100644 --- a/lib/javatests/com/google/android/material/theme/MaterialThemeOverlayTest.java +++ b/lib/javatests/com/google/android/material/theme/MaterialThemeOverlayTest.java @@ -16,7 +16,7 @@ package com.google.android.material.theme; -import com.google.android.material.test.R; +import com.google.android.material.R; import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/theme/ThemeTest.java b/lib/javatests/com/google/android/material/theme/ThemeTest.java index ecbed55d0..786fe1dbb 100644 --- a/lib/javatests/com/google/android/material/theme/ThemeTest.java +++ b/lib/javatests/com/google/android/material/theme/ThemeTest.java @@ -16,7 +16,7 @@ package com.google.android.material.theme; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Build.VERSION_CODES.LOLLIPOP; import static androidx.test.core.app.ApplicationProvider.getApplicationContext; diff --git a/lib/javatests/com/google/android/material/timepicker/ClockHandViewTouchTest.java b/lib/javatests/com/google/android/material/timepicker/ClockHandViewTouchTest.java index 65cc8d814..27fe5ad66 100644 --- a/lib/javatests/com/google/android/material/timepicker/ClockHandViewTouchTest.java +++ b/lib/javatests/com/google/android/material/timepicker/ClockHandViewTouchTest.java @@ -16,7 +16,7 @@ package com.google.android.material.timepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Looper.getMainLooper; import static com.google.common.truth.Truth.assertThat; diff --git a/lib/javatests/com/google/android/material/timepicker/TimePickerTextInputKeyControllerTest.java b/lib/javatests/com/google/android/material/timepicker/TimePickerTextInputKeyControllerTest.java index 78783c315..6310432d5 100644 --- a/lib/javatests/com/google/android/material/timepicker/TimePickerTextInputKeyControllerTest.java +++ b/lib/javatests/com/google/android/material/timepicker/TimePickerTextInputKeyControllerTest.java @@ -16,7 +16,7 @@ package com.google.android.material.timepicker; -import com.google.android.material.test.R; +import com.google.android.material.R; import static android.os.Looper.getMainLooper; import static com.google.common.truth.Truth.assertThat;