Я видел этот roboletirc пример:В чем разница между `createActivity` и` shadowOf`?
@Test
public void shouldHaveHappySmiles() throws Exception {
String hello = new MainActivity().getResources().getString(R.string.hello_world);
assertThat(hello, equalTo("Hello world!"));
}
@Before
public void setup() {
activity = Robolectric.buildActivity(MainActivity.class)
.create().get();
}
@Test
public void checkActivityNotNull() throws Exception {
assertNotNull(activity);
}
@Test
public void buttonClickShouldStartNewActivity() throws Exception
{
Button button = (Button) activity.findViewById(R.id.button2);
button.performClick();
Intent intent = Robolectric.shadowOf(activity).peekNextStartedActivity();
assertEquals(SecondActivity.class.getCanonicalName(), inten
t.getComponent().getClassName());
}
Я попытался посмотреть в документации, но не понял разницу между createActivity
и shadowOf
. может кто-то пролить некоторый свет?
btw, почему в этом тесте есть new MainActivity().getResources().getString(R.string.hello_world);
? когда следует использовать new
вместо createActivity()
?