Home | History | Annotate | Download | only in shadows
      1 package org.robolectric.shadows;
      2 
      3 import static android.os.Build.VERSION_CODES.LOLLIPOP;
      4 import static com.google.common.truth.Truth.assertThat;
      5 
      6 import android.app.Activity;
      7 import android.os.Bundle;
      8 import android.widget.DatePicker;
      9 import android.widget.LinearLayout;
     10 import androidx.test.ext.junit.runners.AndroidJUnit4;
     11 import java.util.Locale;
     12 import libcore.icu.ICU;
     13 import org.junit.Test;
     14 import org.junit.runner.RunWith;
     15 import org.robolectric.Robolectric;
     16 import org.robolectric.android.controller.ActivityController;
     17 import org.robolectric.annotation.Config;
     18 
     19 @RunWith(AndroidJUnit4.class)
     20 @Config(minSdk = LOLLIPOP)
     21 public class ShadowICUTest {
     22   @Test
     23   public void getBestDateTimePattern_returnsReasonableValue() {
     24     assertThat(ICU.getBestDateTimePattern("hm", null)).isEqualTo("hm");
     25   }
     26 
     27   @Test
     28   public void getBestDateTimePattern_returns_jmm_US() {
     29     assertThat(ICU.getBestDateTimePattern("jmm", Locale.US)).isEqualTo("h:mm a");
     30   }
     31 
     32   @Test
     33   public void getBestDateTimePattern_returns_jmm_UK() {
     34     assertThat(ICU.getBestDateTimePattern("jmm", Locale.UK)).isEqualTo("H:mm");
     35   }
     36 
     37   @Test
     38   public void getBestDateTimePattern_returns_jmm_ptBR() {
     39     assertThat(ICU.getBestDateTimePattern("jmm", new Locale("pt", "BR"))).isEqualTo("H:mm");
     40   }
     41 
     42 
     43   @Test
     44   public void datePickerShouldNotCrashWhenAskingForBestDateTimePattern() {
     45     ActivityController<DatePickerActivity> activityController = Robolectric.buildActivity(DatePickerActivity.class);
     46     activityController.setup();
     47   }
     48 
     49   private static class DatePickerActivity extends Activity {
     50     @Override
     51     protected void onCreate(Bundle savedInstanceState) {
     52       super.onCreate(savedInstanceState);
     53       LinearLayout view = new LinearLayout(this);
     54       view.setId(1);
     55       DatePicker datePicker = new DatePicker(this);
     56       view.addView(datePicker);
     57 
     58       setContentView(view);
     59     }
     60   }
     61 }