在我的测试中,我如何模拟我写的一个类?
这是我的测试代码:
import android.support.test.runner.AndroidJUnit4;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
@RunWith(AndroidJUnit4.class)
public class SampleTest {
@Mock
Sample mySample;
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
}
@Test
public void shouldMockSample() {
verify(mySample, never()).neverCallMe();
}
}
Run Code Online (Sandbox Code Playgroud)
示例只是一个虚拟类.
public class Sample {
public void neverCallMe() {}
}
Run Code Online (Sandbox Code Playgroud)
我该如何摆脱这个错误?
java.lang.VerifyError: org/mockito/cglib/core/ReflectUtils at org.mockito.cglib.core.KeyFactory$Generator.generateClass(KeyFactory.java:167) at org.mockito.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25) at org.mockito.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:217) at org.mockito.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145) at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:117) at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:109) at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:105) at org.mockito.cglib.proxy.Enhancer.(Enhancer.java:70) at org.mockito.internal.creation.cglib.ClassImposterizer.createProxyClass(ClassImposterizer.java:95) at org.mockito.internal.creation.cglib.ClassImposterizer.imposterise(ClassImposterizer.java:57) at org.mockito.internal.creation.cglib.ClassImposterizer.imposterise(ClassImposterizer.java:49) at …
我的目标是增加ActionBar纵向模式的高度.我目前订
机器人:actionBarSize
在我的Themes.xml中.
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="DayTheme" parent="android:style/Theme.Holo.Light">
<item name="android:actionBarSize">@dimen/actionBarHeight</item>
<item name="android:actionBarTabTextStyle">@style/tab_indicator_text_dark</item>
</style>
<style name="NightTheme" parent="android:style/Theme.Holo">
<item name="android:actionBarSize">@dimen/actionBarHeight</item>
<item name="android:actionBarTabTextStyle">@style/tab_indicator_text_light</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
我在横向模式下获得了所需的效果,我将ActionBar高度增加到80dp.

然而,我将屏幕旋转为纵向模式,高度变化如此.

注意我在代码中进行以下调用.
final ActionBar bar = getActionBar();
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
bar.setDisplayShowTitleEnabled(false);
bar.setDisplayShowHomeEnabled(false);
Run Code Online (Sandbox Code Playgroud)
我正在开发一个带有android 4.2的Nexus 7.
如何在横向模式下以纵向模式获得相同的80dp高度?