summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilal Alsharifi <599206+bilal-alsharifi@users.noreply.github.com>2021-09-14 15:00:39 -0400
committerGitHub <noreply@github.com>2021-09-14 15:00:39 -0400
commit732801d16f2e90cd852c818b57876a985bc031cf (patch)
tree7aabc73166747f8cf65c08ef3510b3f4260a9e25
parent8356439986c1f3feb1b66d9b64e9832841b2e69c (diff)
downloadsdl_android-732801d16f2e90cd852c818b57876a985bc031cf.tar.gz
Fix Mockito exception (#1730)
* Rewrite HapticInterfaceManagerTest.createViews() without using Mockito * Add missing final keyword * Remove unused import
-rw-r--r--android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/video/HapticInterfaceManagerTest.java59
1 files changed, 37 insertions, 22 deletions
diff --git a/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/video/HapticInterfaceManagerTest.java b/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/video/HapticInterfaceManagerTest.java
index dc74cb12a..bd75e2440 100644
--- a/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/video/HapticInterfaceManagerTest.java
+++ b/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/video/HapticInterfaceManagerTest.java
@@ -21,6 +21,7 @@
**************************************************************************************************/
package com.smartdevicelink.managers.video;
+import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
@@ -45,9 +46,7 @@ import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.mockito.Mock;
-import org.mockito.invocation.InvocationOnMock;
import org.mockito.junit.MockitoJUnitRunner;
-import org.mockito.stubbing.Answer;
import java.util.ArrayList;
import java.util.List;
@@ -56,7 +55,6 @@ import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.Mockito.any;
-import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
@@ -222,36 +220,53 @@ public class HapticInterfaceManagerTest extends TestCase {
}
private View createViews() {
+ Context context = InstrumentationRegistry.getInstrumentation().getContext();
- View view = mock(View.class);
+ final View view = new View(context) {
+ private int count = 0;
- ViewGroup parent1 = mock(ViewGroup.class);
- ViewGroup parent2 = mock(ViewGroup.class);
+ @Override
+ public boolean isClickable() {
+ int curCount = count++;
+ return (curCount >= 1) && (curCount <= 4);
+ }
+ };
- when(parent1.getChildCount()).thenReturn(5);
+ final ViewGroup parent1 = new ViewGroup(context) {
+ @Override
+ protected void onLayout(boolean b, int i, int i1, int i2, int i3) {}
- when(parent1.getChildAt(0)).thenReturn(view);
- when(parent1.getChildAt(1)).thenReturn(view);
- when(parent1.getChildAt(2)).thenReturn(view);
- when(parent1.getChildAt(3)).thenReturn(parent2);
- when(parent1.getChildAt(4)).thenReturn(view);
+ @Override
+ public View getChildAt(int index) {
+ return view;
+ }
- when(parent2.getChildCount()).thenReturn(2);
- when(parent2.getChildAt(0)).thenReturn(view);
- when(parent2.getChildAt(1)).thenReturn(view);
+ @Override
+ public int getChildCount() {
+ return 2;
+ }
+ };
+ final ViewGroup parent2 = new ViewGroup(context) {
+ @Override
+ protected void onLayout(boolean b, int i, int i1, int i2, int i3) {}
- doAnswer(new Answer<Boolean>() {
- private int count = 0;
+ @Override
+ public View getChildAt(int index) {
+ if (index == 3) {
+ return parent1;
+ } else {
+ return view;
+ }
+ }
@Override
- public Boolean answer(InvocationOnMock invocation) throws Throwable {
- int curCount = count++;
- return (curCount >= 1) && (curCount <= 4);
+ public int getChildCount() {
+ return 5;
}
- }).when(view).isClickable();
+ };
- return parent1;
+ return parent2;
}