Merge pull request #5358 from XiangRongLin/testable_prettytime
Make Localization.relativeTime testable
This commit is contained in:
commit
0264383ad2
4 changed files with 74 additions and 46 deletions
|
|
@ -9,19 +9,10 @@ import android.icu.text.CompactDecimalFormat;
|
|||
import android.os.Build;
|
||||
import android.text.TextUtils;
|
||||
import android.util.DisplayMetrics;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.PluralsRes;
|
||||
import androidx.annotation.StringRes;
|
||||
import androidx.preference.PreferenceManager;
|
||||
|
||||
import org.ocpsoft.prettytime.PrettyTime;
|
||||
import org.ocpsoft.prettytime.units.Decade;
|
||||
import org.schabi.newpipe.R;
|
||||
import org.schabi.newpipe.extractor.ListExtractor;
|
||||
import org.schabi.newpipe.extractor.localization.ContentCountry;
|
||||
import org.schabi.newpipe.ktx.OffsetDateTimeKt;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.text.NumberFormat;
|
||||
|
|
@ -33,6 +24,12 @@ import java.util.Arrays;
|
|||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import org.ocpsoft.prettytime.PrettyTime;
|
||||
import org.ocpsoft.prettytime.units.Decade;
|
||||
import org.schabi.newpipe.R;
|
||||
import org.schabi.newpipe.extractor.ListExtractor;
|
||||
import org.schabi.newpipe.extractor.localization.ContentCountry;
|
||||
import org.schabi.newpipe.ktx.OffsetDateTimeKt;
|
||||
|
||||
|
||||
/*
|
||||
|
|
@ -62,10 +59,6 @@ public final class Localization {
|
|||
|
||||
private Localization() { }
|
||||
|
||||
public static void init(final Context context) {
|
||||
initPrettyTime(context);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static String concatenateStrings(final String... strings) {
|
||||
return concatenateStrings(Arrays.asList(strings));
|
||||
|
|
@ -307,12 +300,16 @@ public final class Localization {
|
|||
// Pretty Time
|
||||
//////////////////////////////////////////////////////////////////////////*/
|
||||
|
||||
private static void initPrettyTime(final Context context) {
|
||||
prettyTime = new PrettyTime(getAppLocale(context));
|
||||
public static void initPrettyTime(final PrettyTime time) {
|
||||
prettyTime = time;
|
||||
// Do not use decades as YouTube doesn't either.
|
||||
prettyTime.removeUnit(Decade.class);
|
||||
}
|
||||
|
||||
public static PrettyTime resolvePrettyTime(final Context context) {
|
||||
return new PrettyTime(getAppLocale(context));
|
||||
}
|
||||
|
||||
public static String relativeTime(final OffsetDateTime offsetDateTime) {
|
||||
return relativeTime(OffsetDateTimeKt.toCalendar(offsetDateTime));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue