package org.robolectric.shadows; import android.app.Activity; import android.nfc.NfcAdapter; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.Robolectric; import org.robolectric.RuntimeEnvironment; import org.robolectric.TestRunners; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; import static org.robolectric.Shadows.shadowOf; @RunWith(TestRunners.MultiApiSelfTest.class) public class ShadowNfcAdapterTest { @Test public void setNdefPushMesageCallback_shouldUseCallback() { final NfcAdapter.CreateNdefMessageCallback callback = mock(NfcAdapter.CreateNdefMessageCallback.class); final Activity activity = Robolectric.setupActivity(Activity.class); final NfcAdapter adapter = NfcAdapter.getDefaultAdapter(activity); adapter.setNdefPushMessageCallback(callback, activity); assertThat(shadowOf(adapter).getNdefPushMessageCallback()).isSameAs(callback); } @Test public void isEnabled_shouldReturnEnabledState() { final NfcAdapter adapter = NfcAdapter.getDefaultAdapter(RuntimeEnvironment.application); assertThat(adapter.isEnabled()).isFalse(); shadowOf(adapter).setEnabled(true); assertThat(adapter.isEnabled()).isTrue(); shadowOf(adapter).setEnabled(false); assertThat(adapter.isEnabled()).isFalse(); } }