From 9593623c4699bd595b0e5e57e6bc7233c48ad571 Mon Sep 17 00:00:00 2001 From: bennsimon Date: Tue, 24 Nov 2020 15:56:12 +0300 Subject: [PATCH] add test --- .../java/org/smartregister/util/Utils.java | 2 +- .../org/smartregister/util/UtilsTest.java | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/opensrp-app/src/main/java/org/smartregister/util/Utils.java b/opensrp-app/src/main/java/org/smartregister/util/Utils.java index 147186fb6..3145d555c 100644 --- a/opensrp-app/src/main/java/org/smartregister/util/Utils.java +++ b/opensrp-app/src/main/java/org/smartregister/util/Utils.java @@ -546,7 +546,7 @@ public static void hideKeyboard(Context context, View view) { inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); } } catch (Exception e) { - logError("Error encountered while hiding keyboard " + e); + Timber.e(e, "Error encountered while hiding keyboard"); } } diff --git a/opensrp-app/src/test/java/org/smartregister/util/UtilsTest.java b/opensrp-app/src/test/java/org/smartregister/util/UtilsTest.java index 9cf599778..9ad262b03 100644 --- a/opensrp-app/src/test/java/org/smartregister/util/UtilsTest.java +++ b/opensrp-app/src/test/java/org/smartregister/util/UtilsTest.java @@ -1,8 +1,11 @@ package org.smartregister.util; +import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; +import android.view.View; +import android.view.inputmethod.InputMethodManager; import android.widget.TableRow; import androidx.test.core.app.ApplicationProvider; @@ -49,8 +52,11 @@ import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.ArgumentMatchers.isNull; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.only; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -470,5 +476,21 @@ public void testLogoutUserShouldInvokeRequiredMethods() { verify(mockUserService, times(1)).logoutSession(); verify(context, times(1)).startActivity(any(Intent.class)); } + + @Test + public void testHideKeyboardShouldInvokeRequireMethods() { + Activity activity = mock(Activity.class); + + View view = mock(View.class); + doReturn(view).when(activity).getCurrentFocus(); + + InputMethodManager keyboard = mock(InputMethodManager.class); + + doReturn(keyboard).when(activity).getSystemService(Context.INPUT_METHOD_SERVICE); + + Utils.hideKeyboard(activity); + + verify(keyboard, only()).hideSoftInputFromWindow(isNull(), eq(0)); + } }