Browse Source

Fix unit tests

Guy Carmeli 6 years ago
parent
commit
f358e43c4e

+ 6
- 4
lib/android/app/src/main/java/com/reactnativenavigation/presentation/OptionsPresenter.java View File

22
 public class OptionsPresenter {
22
 public class OptionsPresenter {
23
     private static final int DEFAULT_TITLE_COLOR = Color.BLACK;
23
     private static final int DEFAULT_TITLE_COLOR = Color.BLACK;
24
     private static final int DEFAULT_SUBTITLE_COLOR = Color.GRAY;
24
     private static final int DEFAULT_SUBTITLE_COLOR = Color.GRAY;
25
-    private static final float DEFAULT_TITLE_FONT_SIZE = UiUtils.dpToSp(18);
26
-    private static final float DEFAULT_SUBTITLE_FONT_SIZE = UiUtils.dpToSp(14);
25
+    private final float defaultTitleFontSize;
26
+    private final float defaultSubtitleFontSize;
27
 
27
 
28
     private TopBar topBar;
28
     private TopBar topBar;
29
 
29
 
30
     public OptionsPresenter(TopBar topBar) {
30
     public OptionsPresenter(TopBar topBar) {
31
         this.topBar = topBar;
31
         this.topBar = topBar;
32
+        defaultTitleFontSize = UiUtils.dpToSp(topBar.getContext(), 18);
33
+        defaultSubtitleFontSize = UiUtils.dpToSp(topBar.getContext(), 14);
32
     }
34
     }
33
 
35
 
34
     public void applyChildOptions(Options options, Component child) {
36
     public void applyChildOptions(Options options, Component child) {
46
     private void applyTopBarOptions(TopBarOptions options, AnimationsOptions animationOptions, Component component) {
48
     private void applyTopBarOptions(TopBarOptions options, AnimationsOptions animationOptions, Component component) {
47
         topBar.setTitle(options.title.text.get(""));
49
         topBar.setTitle(options.title.text.get(""));
48
         if (options.title.component.hasValue()) topBar.setTitleComponent(options.title.component.get(), options.title.alignment);
50
         if (options.title.component.hasValue()) topBar.setTitleComponent(options.title.component.get(), options.title.alignment);
49
-        topBar.setTitleFontSize(options.title.fontSize.get(DEFAULT_TITLE_FONT_SIZE));
51
+        topBar.setTitleFontSize(options.title.fontSize.get(defaultTitleFontSize));
50
         topBar.setTitleTextColor(options.title.color.get(DEFAULT_TITLE_COLOR));
52
         topBar.setTitleTextColor(options.title.color.get(DEFAULT_TITLE_COLOR));
51
         topBar.setTitleTypeface(options.title.fontFamily);
53
         topBar.setTitleTypeface(options.title.fontFamily);
52
 
54
 
53
         topBar.setSubtitle(options.subtitle.text.get(""));
55
         topBar.setSubtitle(options.subtitle.text.get(""));
54
-        topBar.setSubtitleFontSize(options.subtitle.fontSize.get(DEFAULT_SUBTITLE_FONT_SIZE));
56
+        topBar.setSubtitleFontSize(options.subtitle.fontSize.get(defaultSubtitleFontSize));
55
         topBar.setSubtitleColor(options.subtitle.color.get(DEFAULT_SUBTITLE_COLOR));
57
         topBar.setSubtitleColor(options.subtitle.color.get(DEFAULT_SUBTITLE_COLOR));
56
         topBar.setSubtitleFontFamily(options.subtitle.fontFamily);
58
         topBar.setSubtitleFontFamily(options.subtitle.fontFamily);
57
 
59
 

+ 5
- 7
lib/android/app/src/main/java/com/reactnativenavigation/utils/UiUtils.java View File

13
 import android.view.ViewTreeObserver;
13
 import android.view.ViewTreeObserver;
14
 import android.view.WindowManager;
14
 import android.view.WindowManager;
15
 
15
 
16
-import com.reactnativenavigation.NavigationApplication;
17
-
18
 public class UiUtils {
16
 public class UiUtils {
19
     public static final int STATUS_BAR_HEIGHT_M = 24;
17
     public static final int STATUS_BAR_HEIGHT_M = 24;
20
     public static final int STATUS_BAR_HEIGHT_L = 25;
18
     public static final int STATUS_BAR_HEIGHT_L = 25;
56
         final int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
54
         final int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
57
         statusBarHeight = resourceId > 0 ?
55
         statusBarHeight = resourceId > 0 ?
58
                 resources.getDimensionPixelSize(resourceId) :
56
                 resources.getDimensionPixelSize(resourceId) :
59
-                (int) dpToPx(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M ? STATUS_BAR_HEIGHT_M : STATUS_BAR_HEIGHT_L);
57
+                (int) dpToPx(context, Build.VERSION.SDK_INT >= Build.VERSION_CODES.M ? STATUS_BAR_HEIGHT_M : STATUS_BAR_HEIGHT_L);
60
         return statusBarHeight;
58
         return statusBarHeight;
61
     }
59
     }
62
 
60
 
63
-    public static float dpToPx(float dp) {
64
-        float scale = NavigationApplication.instance.getResources().getDisplayMetrics().density;
61
+    public static float dpToPx(Context context, float dp) {
62
+        float scale = context.getResources().getDisplayMetrics().density;
65
         return dp * scale + 0.5f;
63
         return dp * scale + 0.5f;
66
     }
64
     }
67
 
65
 
68
-    public static float dpToSp(float dp) {
69
-        return dpToPx(dp) / NavigationApplication.instance.getResources().getDisplayMetrics().density;
66
+    public static float dpToSp(Context context, float dp) {
67
+        return dpToPx(context, dp) / context.getResources().getDisplayMetrics().density;
70
     }
68
     }
71
 }
69
 }