blob: ad24100ca4856dff50bccc3dd6b58238aea849b0 [file] [log] [blame]
package com.xtremelabs.robolectric.tester.android.view;
import static org.junit.Assert.assertNotNull;
import junit.framework.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import com.xtremelabs.robolectric.Robolectric;
import com.xtremelabs.robolectric.WithTestDefaultsRunner;
import com.xtremelabs.robolectric.shadows.ShadowActivity;
import com.xtremelabs.robolectric.tester.android.view.TestMenuItem;
import android.app.Activity;
import android.content.Intent;
@RunWith(WithTestDefaultsRunner.class)
public class TestMenuTest {
@Test
public void addAndRemoveMenuItems() {
TestMenu testMenu = new TestMenu(new MyActivity());
//TestMenuItem testMenuItem = new TestMenuItem(R.id.menu_about);
testMenu.add(0, 10,0,0);
TestMenuItem testMenuItem = (TestMenuItem) testMenu.findItem(10);
Assert.assertEquals(10, testMenuItem.getItemId());
testMenu.removeItem(10);
testMenuItem = (TestMenuItem) testMenu.findItem(10);
Assert.assertNull(testMenuItem);
}
@Test
public void clickWithIntent() {
MyActivity activity = new MyActivity();
TestMenu testMenu = new TestMenu(activity);
testMenu.add(0, 10,0,0);
TestMenuItem testMenuItem = (TestMenuItem) testMenu.findItem(10);
Assert.assertNull(testMenuItem.getIntent());
Intent intent = new Intent(activity, MyActivity.class);
testMenuItem.setIntent(intent);
testMenuItem.click();
Assert.assertNotNull(testMenuItem);
ShadowActivity shadowActivity = Robolectric.shadowOf(activity);
Intent startedIntent = shadowActivity.getNextStartedActivity();
assertNotNull(startedIntent);
}
private static class MyActivity extends Activity {
@Override protected void onDestroy() {
super.onDestroy();
}
}
}