diff --git a/res/layout/battery_chart_graph.xml b/res/layout/battery_chart_graph.xml
index db86693043e..e89c9120c74 100644
--- a/res/layout/battery_chart_graph.xml
+++ b/res/layout/battery_chart_graph.xml
@@ -40,12 +40,14 @@
android:contentDescription="@string/battery_usage_chart"
android:textAppearance="?android:attr/textAppearanceSmall"
settings:textColor="?android:attr/textColorSecondary" />
+
+ android:textColor="?android:attr/textColorSecondary"
+ android:textSize="14dp" />
diff --git a/res/layout/notification_history_app_layout.xml b/res/layout/notification_history_app_layout.xml
index 8f66628e74b..24a43c66c71 100644
--- a/res/layout/notification_history_app_layout.xml
+++ b/res/layout/notification_history_app_layout.xml
@@ -78,13 +78,14 @@
android:layout_height="1dp"
android:background="?android:attr/listDivider"/>
-
+
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 1b8179abdaf..7a7588315ef 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -437,7 +437,7 @@
6dp
1dp
4dp
- 3dp
+ 5dp
1dp
2dp
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a05640b0d5e..742dd836395 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -6654,10 +6654,6 @@
System usage for %s
App usage for %s
-
- am
-
- pm
Total: less than a min
diff --git a/res/xml/smart_battery_detail.xml b/res/xml/smart_battery_detail.xml
index 9c0aac58318..97951252525 100644
--- a/res/xml/smart_battery_detail.xml
+++ b/res/xml/smart_battery_detail.xml
@@ -22,7 +22,7 @@
android:title="@string/smart_battery_manager_title"
settings:keywords="@string/keywords_battery_adaptive_preferences">
-
diff --git a/src/com/android/settings/biometrics/BiometricUtils.java b/src/com/android/settings/biometrics/BiometricUtils.java
index a98c3555f71..7dd63850dee 100644
--- a/src/com/android/settings/biometrics/BiometricUtils.java
+++ b/src/com/android/settings/biometrics/BiometricUtils.java
@@ -244,7 +244,9 @@ public class BiometricUtils {
* @return true if the next enrollment was started
*/
public static boolean tryStartingNextBiometricEnroll(@NonNull Activity activity,
- int requestCode) {
+ int requestCode, String debugReason) {
+
+ Log.d(TAG, "tryStartingNextBiometricEnroll, debugReason: " + debugReason);
final PendingIntent pendingIntent = (PendingIntent) activity.getIntent()
.getExtra(MultiBiometricEnrollHelper.EXTRA_ENROLL_AFTER_FACE);
if (pendingIntent != null) {
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollEducation.java b/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
index fa8f5564f2e..6509d4e6e2e 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollEducation.java
@@ -216,7 +216,8 @@ public class FaceEnrollEducation extends BiometricEnrollBase {
}
protected void onSkipButtonClick(View view) {
- if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST)) {
+ if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST,
+ "edu_skip")) {
setResult(RESULT_SKIP);
finish();
}
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
index e9092c795ea..1de4bc71c3d 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollIntroduction.java
@@ -59,28 +59,32 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
@Override
protected void onCancelButtonClick(View view) {
- if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST)) {
+ if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST,
+ "cancel")) {
super.onCancelButtonClick(view);
}
}
@Override
protected void onSkipButtonClick(View view) {
- if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST)) {
+ if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST,
+ "skip")) {
super.onSkipButtonClick(view);
}
}
@Override
protected void onEnrollmentSkipped(@Nullable Intent data) {
- if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST)) {
+ if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST,
+ "skipped")) {
super.onEnrollmentSkipped(data);
}
}
@Override
protected void onFinishedEnrolling(@Nullable Intent data) {
- if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST)) {
+ if (!BiometricUtils.tryStartingNextBiometricEnroll(this, ENROLL_NEXT_BIOMETRIC_REQUEST,
+ "finished")) {
super.onFinishedEnrolling(data);
}
}
diff --git a/src/com/android/settings/fuelgauge/BatteryChartView.java b/src/com/android/settings/fuelgauge/BatteryChartView.java
index a98c644b22a..7bc60b23c38 100644
--- a/src/com/android/settings/fuelgauge/BatteryChartView.java
+++ b/src/com/android/settings/fuelgauge/BatteryChartView.java
@@ -57,7 +57,8 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
Arrays.asList("SwitchAccessService", "TalkBackService", "JustSpeakService");
private static final int DEFAULT_TRAPEZOID_COUNT = 12;
- private static final int DEFAULT_TIMESTAMP_COUNT = 5;
+ private static final int DEFAULT_TIMESTAMP_COUNT = 4;
+ private static final int TIMESTAMP_GAPS_COUNT = DEFAULT_TIMESTAMP_COUNT - 1;
private static final int DIVIDER_COLOR = Color.parseColor("#CDCCC5");
private static final long UPDATE_STATE_DELAYED_TIME = 500L;
@@ -91,7 +92,7 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
new Rect[] {new Rect(), new Rect(), new Rect()};
// For drawing the timestamp information.
private final Rect[] mTimestampsBounds =
- new Rect[] {new Rect(), new Rect(), new Rect(), new Rect(), new Rect()};
+ new Rect[] {new Rect(), new Rect(), new Rect(), new Rect()};
@VisibleForTesting
Handler mHandler = new Handler();
@@ -198,13 +199,14 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
if (mTimestamps == null) {
mTimestamps = new String[DEFAULT_TIMESTAMP_COUNT];
}
- final long timeSlotOffset = DateUtils.HOUR_IN_MILLIS * 6;
+ final long timeSlotOffset =
+ DateUtils.HOUR_IN_MILLIS * (/*total 24 hours*/ 24 / TIMESTAMP_GAPS_COUNT);
final boolean is24HourFormat = DateFormat.is24HourFormat(getContext());
for (int index = 0; index < DEFAULT_TIMESTAMP_COUNT; index++) {
mTimestamps[index] =
ConvertUtils.utcToLocalTimeHour(
getContext(),
- latestTimestamp - (4 - index) * timeSlotOffset,
+ latestTimestamp - (TIMESTAMP_GAPS_COUNT - index) * timeSlotOffset,
is24HourFormat);
}
requestLayout();
@@ -426,8 +428,9 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
final float[] xOffsets = new float[DEFAULT_TIMESTAMP_COUNT];
final float baselineX = mDividerWidth * .5f;
final float offsetX = mDividerWidth + unitWidth;
+ final int slotBarOffset = (/*total 12 bars*/ 12) / TIMESTAMP_GAPS_COUNT;
for (int index = 0; index < DEFAULT_TIMESTAMP_COUNT; index++) {
- xOffsets[index] = baselineX + index * offsetX * 3;
+ xOffsets[index] = baselineX + index * offsetX * slotBarOffset;
}
drawTimestamp(canvas, xOffsets);
}
@@ -439,13 +442,15 @@ public class BatteryChartView extends AppCompatImageView implements View.OnClick
mTimestamps[0],
xOffsets[0] - mTimestampsBounds[0].left,
getTimestampY(0), mTextPaint);
+ final int latestIndex = DEFAULT_TIMESTAMP_COUNT - 1;
// Draws the last timestamp info.
canvas.drawText(
- mTimestamps[4],
- xOffsets[4] - mTimestampsBounds[4].width() - mTimestampsBounds[4].left,
- getTimestampY(4), mTextPaint);
+ mTimestamps[latestIndex],
+ xOffsets[latestIndex] - mTimestampsBounds[latestIndex].width()
+ - mTimestampsBounds[latestIndex].left,
+ getTimestampY(latestIndex), mTextPaint);
// Draws the rest of timestamp info since it is located in the center.
- for (int index = 1; index <= 3; index++) {
+ for (int index = 1; index <= DEFAULT_TIMESTAMP_COUNT - 2; index++) {
canvas.drawText(
mTimestamps[index],
xOffsets[index] -
diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java
index 92151c0c58d..4433da2c9cc 100644
--- a/src/com/android/settings/fuelgauge/BatteryInfo.java
+++ b/src/com/android/settings/fuelgauge/BatteryInfo.java
@@ -25,6 +25,7 @@ import android.os.BatteryStatsManager;
import android.os.BatteryUsageStats;
import android.os.SystemClock;
import android.text.format.Formatter;
+import android.util.Log;
import android.util.SparseIntArray;
import androidx.annotation.NonNull;
@@ -42,6 +43,7 @@ import com.android.settingslib.utils.PowerUtil;
import com.android.settingslib.utils.StringUtil;
public class BatteryInfo {
+ private static final String TAG = "BatteryInfo";
public CharSequence chargeLabel;
public CharSequence remainingLabel;
@@ -155,8 +157,13 @@ public class BatteryInfo {
if (batteryUsageStats != null) {
stats = batteryUsageStats;
} else {
- stats = context.getSystemService(BatteryStatsManager.class)
- .getBatteryUsageStats();
+ try {
+ stats = context.getSystemService(BatteryStatsManager.class)
+ .getBatteryUsageStats();
+ } catch (RuntimeException e) {
+ Log.e(TAG, "getBatteryInfo() from getBatteryUsageStats()", e);
+ return null;
+ }
}
return getBatteryInfo(context, stats, shortString);
}
diff --git a/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java b/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java
index d35ef82b818..0acc54e758b 100644
--- a/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java
+++ b/src/com/android/settings/fuelgauge/BatteryUsageStatsLoader.java
@@ -20,6 +20,7 @@ import android.content.Context;
import android.os.BatteryStatsManager;
import android.os.BatteryUsageStats;
import android.os.BatteryUsageStatsQuery;
+import android.util.Log;
import com.android.settingslib.utils.AsyncLoaderCompat;
@@ -27,6 +28,7 @@ import com.android.settingslib.utils.AsyncLoaderCompat;
* Loader to get new {@link BatteryUsageStats} in the background
*/
public class BatteryUsageStatsLoader extends AsyncLoaderCompat {
+ private static final String TAG = "BatteryUsageStatsLoader";
private final BatteryStatsManager mBatteryStatsManager;
private final boolean mIncludeBatteryHistory;
@@ -42,7 +44,12 @@ public class BatteryUsageStatsLoader extends AsyncLoaderCompat loader, BatteryInfo batteryInfo) {
+ if (batteryInfo == null) {
+ Log.w(TAG, "mBatteryInfoLoaderCallbacks: batteryInfo = null");
+ return;
+ }
mBatteryHeaderPreferenceController.updateHeaderPreference(batteryInfo);
mBatteryHeaderPreferenceController.updateHeaderByBatteryTips(
mBatteryTipPreferenceController.getCurrentBatteryTip(), batteryInfo);
@@ -126,6 +131,10 @@ public class PowerUsageSummary extends PowerUsageBase implements
@Override
public void onLoadFinished(Loader> loader,
List data) {
+ if (mBatteryInfo == null) {
+ Log.w(TAG, "mBatteryTipsCallbacks: batteryInfo = null");
+ return;
+ }
mBatteryTipPreferenceController.updateBatteryTips(data);
mBatteryHeaderPreferenceController.updateHeaderByBatteryTips(
mBatteryTipPreferenceController.getCurrentBatteryTip(), mBatteryInfo);
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
index 7d11ba5a718..b6806e8573a 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
@@ -18,6 +18,7 @@ package com.android.settings.fuelgauge.batterytip;
import android.content.Context;
import android.os.BatteryUsageStats;
+import android.util.Log;
import androidx.annotation.VisibleForTesting;
@@ -67,16 +68,17 @@ public class BatteryTipLoader extends AsyncLoaderCompat> {
final BatteryInfo batteryInfo = mBatteryUtils.getBatteryInfo(TAG);
final Context context = getContext();
+ tips.add(new EarlyWarningDetector(policy, context).detect());
+ if (batteryInfo == null) {
+ Log.w(TAG, "loadInBackground() batteryInfo = null");
+ return tips;
+ }
+
tips.add(new LowBatteryDetector(context, policy, batteryInfo).detect());
tips.add(new HighUsageDetector(context, policy, mBatteryUsageStats, batteryInfo).detect());
tips.add(new SmartBatteryDetector(
context, policy, batteryInfo, context.getContentResolver()).detect());
- tips.add(new EarlyWarningDetector(policy, context).detect());
tips.add(new BatteryDefenderDetector(batteryInfo).detect());
- // Disable this feature now since it introduces false positive cases. We will try to improve
- // it in the future.
- // tips.add(new RestrictAppDetector(context, policy).detect());
-
Collections.sort(tips);
return tips;
}
diff --git a/src/com/android/settings/notification/history/NotificationHistoryAdapter.java b/src/com/android/settings/notification/history/NotificationHistoryAdapter.java
index 0683ef7612d..dfa8a30c15d 100644
--- a/src/com/android/settings/notification/history/NotificationHistoryAdapter.java
+++ b/src/com/android/settings/notification/history/NotificationHistoryAdapter.java
@@ -71,6 +71,11 @@ public class NotificationHistoryAdapter extends
return new NotificationHistoryViewHolder(view);
}
+ @Override
+ public long getItemId(int position) {
+ return mValues.get(position).hashCode();
+ }
+
@Override
public void onBindViewHolder(final @NonNull NotificationHistoryViewHolder holder,
int position) {
diff --git a/src/com/android/settings/notification/history/NotificationHistoryRecyclerView.java b/src/com/android/settings/notification/history/NotificationHistoryRecyclerView.java
index 06c74bc3432..224c31d1f55 100644
--- a/src/com/android/settings/notification/history/NotificationHistoryRecyclerView.java
+++ b/src/com/android/settings/notification/history/NotificationHistoryRecyclerView.java
@@ -40,7 +40,6 @@ public class NotificationHistoryRecyclerView extends RecyclerView {
ItemTouchHelper touchHelper = new ItemTouchHelper(
new DismissTouchHelper(0, ItemTouchHelper.START | ItemTouchHelper.END));
touchHelper.attachToRecyclerView(this);
- setNestedScrollingEnabled(false);
}
public void setOnItemSwipeDeleteListener(OnItemSwipeDeleteListener listener) {
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java
index fd4e82d4b23..43fbe81a3a1 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartPreferenceControllerTest.java
@@ -50,7 +50,6 @@ import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
@@ -65,7 +64,6 @@ import java.util.HashMap;
import java.util.Locale;
import java.util.List;
import java.util.Map;
-import java.util.TimeZone;
@RunWith(RobolectricTestRunner.class)
public final class BatteryChartPreferenceControllerTest {
@@ -125,37 +123,6 @@ public final class BatteryChartPreferenceControllerTest {
createBatteryHistoryMap());
}
- @Ignore
- @Test
- public void testOnResume_uiModeIsChanged_clearBatteryDiffEntryCache() {
- doReturn(mResources).when(mContext).getResources();
- doReturn(mConfiguration).when(mResources).getConfiguration();
- mConfiguration.uiMode = Configuration.UI_MODE_NIGHT_UNDEFINED;
- // Ensures the testing environment is correct.
- assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
- mBatteryChartPreferenceController.onResume();
- // Changes the uiMode in the configuration.
- mConfiguration.uiMode = Configuration.UI_MODE_NIGHT_YES;
-
- mBatteryChartPreferenceController.onResume();
- assertThat(BatteryDiffEntry.sResourceCache).isEmpty();
- }
-
- @Ignore
- @Test
- public void testOnResume_uiModeIsNotChanged_notClearBatteryDiffEntryCache() {
- doReturn(mResources).when(mContext).getResources();
- doReturn(mConfiguration).when(mResources).getConfiguration();
- mConfiguration.uiMode = Configuration.UI_MODE_NIGHT_UNDEFINED;
- // Ensures the testing environment is correct.
- assertThat(BatteryDiffEntry.sResourceCache).hasSize(1);
-
- mBatteryChartPreferenceController.onResume();
- assertThat(BatteryDiffEntry.sResourceCache).isNotEmpty();
- verify(mMetricsFeatureProvider)
- .action(mContext, SettingsEnums.OPEN_BATTERY_USAGE);
- }
-
@Test
public void testOnDestroy_activityIsChanging_clearBatteryEntryCache() {
doReturn(true).when(mSettingsActivity).isChangingConfigurations();
@@ -579,12 +546,12 @@ public final class BatteryChartPreferenceControllerTest {
// Verifies the title in the preference group.
verify(mBatteryChartPreferenceController.mAppListPrefGroup)
.setTitle(captor.capture());
- assertThat(captor.getValue()).isEqualTo("App usage for 4 - 7");
+ assertThat(captor.getValue()).isNotEqualTo("App usage for past 24 hr");
// Verifies the title in the expandable divider.
captor = ArgumentCaptor.forClass(String.class);
verify(mBatteryChartPreferenceController.mExpandDividerPreference)
.setTitle(captor.capture());
- assertThat(captor.getValue()).isEqualTo("System usage for 4 - 7");
+ assertThat(captor.getValue()).isNotEqualTo("System usage for past 24 hr");
}
@Test
@@ -722,9 +689,6 @@ public final class BatteryChartPreferenceControllerTest {
new long[] {1619196786769L, 0L, 1619247636826L};
ConvertUtils.utcToLocalTimeHour(
mContext, /*timestamp=*/ 0, /*is24HourFormat=*/ false);
- // Simulates the locale in GMT.
- ConvertUtils.sSimpleDateFormatForHour
- .setTimeZone(TimeZone.getTimeZone("GMT"));
}
private BatteryChartPreferenceController createController() {
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java
index d19a012812e..0b75e798423 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryChartViewTest.java
@@ -33,7 +33,6 @@ import android.view.accessibility.AccessibilityManager;
import com.android.settings.testutils.FakeFeatureFactory;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -44,7 +43,6 @@ import org.robolectric.RuntimeEnvironment;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.Locale;
-import java.util.TimeZone;
@RunWith(RobolectricTestRunner.class)
public final class BatteryChartViewTest {
@@ -233,21 +231,4 @@ public final class BatteryChartViewTest {
verify(mBatteryChartView.mHandler)
.postDelayed(mBatteryChartView.mUpdateClickableStateRun, 500L);
}
-
- @Ignore
- @Test
- public void testSetLatestTimestamp_generateExpectedTimestamps() {
- final long timestamp = 1619196786769L;
- ConvertUtils.sSimpleDateFormatForHour = null;
- // Invokes the method first to create the SimpleDateFormat.
- ConvertUtils.utcToLocalTimeHour(
- mContext, /*timestamp=*/ 0, /*is24HourFormat=*/ false);
- ConvertUtils.sSimpleDateFormatForHour
- .setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
- final String[] expectedTimestamps = new String[] {"00", "06", "12", "18", "00"};
-
- mBatteryChartView.setLatestTimestamp(timestamp);
-
- assertThat(mBatteryChartView.mTimestamps).isEqualTo(expectedTimestamps);
- }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java
index 0b1a1e31642..8ae50489216 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/ConvertUtilsTest.java
@@ -30,7 +30,6 @@ import android.os.UserHandle;
import com.android.settings.testutils.FakeFeatureFactory;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -317,71 +316,6 @@ public final class ConvertUtilsTest {
.isEqualTo(entry.mConsumePower * ratio);
}
- @Ignore
- @Test
- public void testUtcToLocalTime_returnExpectedResult() {
- ConvertUtils.sZoneId = null;
- ConvertUtils.sLocale = null;
- final long timestamp = 1619196786769L;
- final String expectedZoneId = "America/Los_Angeles";
- ConvertUtils.sSimpleDateFormat = null;
- // Invokes the method first to create the SimpleDateFormat.
- ConvertUtils.utcToLocalTime(mContext, /*timestamp=*/ 0);
- ConvertUtils.sSimpleDateFormat
- .setTimeZone(TimeZone.getTimeZone(expectedZoneId));
- mContext.getResources().getConfiguration().setLocales(
- new LocaleList(new Locale("en_US")));
-
- assertThat(ConvertUtils.utcToLocalTime(mContext, timestamp))
- .isEqualTo("Apr 24,2021 00:53:06");
- assertThat(ConvertUtils.sZoneId).isNotEqualTo(expectedZoneId);
- assertThat(ConvertUtils.sLocale).isEqualTo(new Locale("en_US"));
- }
-
- @Ignore
- @Test
- public void testUtcToLocalTimeHour_12HourFormat_returnExpectedResult() {
- ConvertUtils.sZoneIdForHour = null;
- ConvertUtils.sLocaleForHour = null;
- final long timestamp = 1619000086769L;
- final String expectedZoneId = "America/Los_Angeles";
- ConvertUtils.sSimpleDateFormatForHour = null;
- // Invokes the method first to create the SimpleDateFormat.
- ConvertUtils.utcToLocalTimeHour(
- mContext, /*timestamp=*/ 0, /*is24HourFormat=*/ false);
- ConvertUtils.sSimpleDateFormatForHour
- .setTimeZone(TimeZone.getTimeZone(expectedZoneId));
- mContext.getResources().getConfiguration().setLocales(
- new LocaleList(new Locale("en_US")));
-
- assertThat(ConvertUtils.utcToLocalTimeHour(
- mContext, timestamp, /*is24HourFormat=*/ false)).isEqualTo("6");
- assertThat(ConvertUtils.sZoneIdForHour).isNotEqualTo(expectedZoneId);
- assertThat(ConvertUtils.sLocaleForHour).isEqualTo(new Locale("en_US"));
- }
-
- @Ignore
- @Test
- public void testUtcToLocalTimeHour_24HourFormat_returnExpectedResult() {
- ConvertUtils.sZoneIdForHour = null;
- ConvertUtils.sLocaleForHour = null;
- final long timestamp = 1619000086769L;
- final String expectedZoneId = "America/Los_Angeles";
- ConvertUtils.sSimpleDateFormatForHour = null;
- // Invokes the method first to create the SimpleDateFormat.
- ConvertUtils.utcToLocalTimeHour(
- mContext, /*timestamp=*/ 0, /*is24HourFormat=*/ false);
- ConvertUtils.sSimpleDateFormatForHour
- .setTimeZone(TimeZone.getTimeZone(expectedZoneId));
- mContext.getResources().getConfiguration().setLocales(
- new LocaleList(new Locale("en_US")));
-
- assertThat(ConvertUtils.utcToLocalTimeHour(
- mContext, timestamp, /*is24HourFormat=*/ true)).isEqualTo("18");
- assertThat(ConvertUtils.sZoneIdForHour).isNotEqualTo(expectedZoneId);
- assertThat(ConvertUtils.sLocaleForHour).isEqualTo(new Locale("en_US"));
- }
-
@Test
public void getLocale_nullContext_returnDefaultLocale() {
assertThat(ConvertUtils.getLocale(/*context=*/ null))