org.robolectric.util.ReflectionHelpers.createNullProxy()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(7.5k)|赞(0)|评价(0)|浏览(96)

本文整理了Java中org.robolectric.util.ReflectionHelpers.createNullProxy方法的一些代码示例,展示了ReflectionHelpers.createNullProxy的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ReflectionHelpers.createNullProxy方法的具体详情如下:
包路径:org.robolectric.util.ReflectionHelpers
类名称:ReflectionHelpers
方法名:createNullProxy

ReflectionHelpers.createNullProxy介绍

暂无

代码示例

代码示例来源:origin: robolectric/robolectric

@Implementation(minSdk = JELLY_BEAN_MR2)
 public static IAppOpsService asInterface(IBinder obj) {
  return ReflectionHelpers.createNullProxy(IAppOpsService.class);
 }
}

代码示例来源:origin: robolectric/robolectric

@Implementation(minSdk = O)
 public static IAudioService getService() {
  return ReflectionHelpers.createNullProxy(IAudioService.class);
 }
}

代码示例来源:origin: robolectric/robolectric

@Implementation(minSdk = O)
protected static IActivityManager getService() {
 return ReflectionHelpers.createNullProxy(IActivityManager.class);
}

代码示例来源:origin: robolectric/robolectric

@Implementation(minSdk = N, maxSdk = N_MR1)
protected static IAudioService getService() {
 return ReflectionHelpers.createNullProxy(IAudioService.class);
}

代码示例来源:origin: robolectric/robolectric

private static Binder createBinder(String className, String descriptor) {
 Class<IInterface> clazz;
 try {
  clazz = (Class<IInterface>) Class.forName(className);
 } catch (ClassNotFoundException e) {
  throw new RuntimeException(e);
 }
 Binder binder = new Binder();
 binder.attachInterface(ReflectionHelpers.createNullProxy(clazz), descriptor);
 return binder;
}

代码示例来源:origin: robolectric/robolectric

private static Binder createBinder(Class<? extends IInterface> clazz, String descriptor) {
 Binder binder = new Binder();
 binder.attachInterface(ReflectionHelpers.createNullProxy(clazz), descriptor);
 return binder;
}

代码示例来源:origin: robolectric/robolectric

@Test
public void clickOn_shouldCallClickListener() throws Exception {
 View view = new View(context);
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class));
 OnClickListener testOnClickListener = mock(OnClickListener.class);
 view.setOnClickListener(testOnClickListener);
 ShadowView.clickOn(view);
 verify(testOnClickListener).onClick(view);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void focusRequest_shouldNotExplodeOnViewRootImpl() throws Exception {
 LinearLayout parent = new LinearLayout(context);
 shadowOf(parent).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class));
 LayoutInflater.from(context).inflate(R.layout.request_focus, parent);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void checkedClick_shouldClickOnView() throws Exception {
 OnClickListener clickListener = mock(OnClickListener.class);
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class));
 view.setOnClickListener(clickListener);
 shadowOf(view).checkedPerformClick();
 verify(clickListener).onClick(view);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void performLongClick_shouldClickOnView() throws Exception {
 OnLongClickListener clickListener = mock(OnLongClickListener.class);
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class));
 view.setOnLongClickListener(clickListener);
 view.performLongClick();
 verify(clickListener).onLongClick(view);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void itKnowsIfTheViewIsShown() {
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class)); // a view is only considered visible if it is added to a view root
 view.setVisibility(View.VISIBLE);
 assertThat(view.isShown()).isTrue();
}

代码示例来源:origin: robolectric/robolectric

@Test
public void getPositionForView_shouldReturnInvalidPositionForViewThatIsNotFound() throws Exception {
 prepareWithListAdapter();
 View view = new View(context);
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class)); // Android implementation requires the item have a parent
 assertThat(listView.getPositionForView(view)).isEqualTo(AdapterView.INVALID_POSITION);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void shouldKnowIfThisOrAncestorsAreVisible() throws Exception {
 assertThat(view.isShown()).named("view isn't considered shown unless it has a view root").isFalse();
 shadowOf(view).setMyParent(ReflectionHelpers.createNullProxy(ViewParent.class));
 assertThat(view.isShown()).isTrue();
 shadowOf(view).setMyParent(null);
 ViewGroup parent = new LinearLayout(context);
 parent.addView(view);
 ViewGroup grandParent = new LinearLayout(context);
 grandParent.addView(parent);
 grandParent.setVisibility(View.GONE);
 assertFalse(view.isShown());
}

代码示例来源:origin: robolectric/robolectric

private static AccessibilityManager createInstance(Context context) throws Exception {
 if (getApiLevel() >= KITKAT) {
  AccessibilityManager accessibilityManager = Shadow.newInstance(AccessibilityManager.class,
    new Class[]{Context.class, IAccessibilityManager.class, int.class},
    new Object[]{context, ReflectionHelpers.createNullProxy(IAccessibilityManager.class), 0});
  ReflectionHelpers.setField(accessibilityManager, "mHandler", new MyHandler(context.getMainLooper(), accessibilityManager));
  return accessibilityManager;
 } else {
  AccessibilityManager accessibilityManager = Shadow.newInstance(AccessibilityManager.class, new Class[0], new Object[0]);
  ReflectionHelpers.setField(accessibilityManager, "mHandler", new MyHandler(context.getMainLooper(), accessibilityManager));
  return accessibilityManager;
 }
}

代码示例来源:origin: robolectric/robolectric

@Test
public void registerSessionCallback_sessionSucceeds() throws Exception {
 PackageInstaller.SessionCallback mockCallback = mock(PackageInstaller.SessionCallback.class);
 packageInstaller.registerSessionCallback(mockCallback, new Handler());
 int sessionId = packageInstaller.createSession(createSessionParams("packageName"));
 verify(mockCallback).onCreated(sessionId);
 PackageInstaller.Session session = packageInstaller.openSession(sessionId);
 OutputStream outputStream = session.openWrite("filename", 0, 0);
 outputStream.close();
 session.commit(new IntentSender(ReflectionHelpers.createNullProxy(IIntentSender.class)));
 shadowOf(packageInstaller).setSessionProgress(sessionId, 50.0f);
 verify(mockCallback).onProgressChanged(sessionId, 50.0f);
 verify(mockCallback).onFinished(sessionId, true);
}

代码示例来源:origin: robolectric/robolectric

@Test
public void sessionCommitSession_streamProperlyClosed() throws Exception {
 int sessionId = packageInstaller.createSession(createSessionParams("packageName"));
 PackageInstaller.Session session = packageInstaller.openSession(sessionId);
 OutputStream outputStream = session.openWrite("filename", 0, 0);
 outputStream.close();
 session.commit(new IntentSender(ReflectionHelpers.createNullProxy(IIntentSender.class)));
}

代码示例来源:origin: robolectric/robolectric

@Test(expected = SecurityException.class)
public void sessionCommitSession_streamStillOpen() throws Exception {
 int sessionId = packageInstaller.createSession(createSessionParams("packageName"));
 PackageInstaller.Session session = packageInstaller.openSession(sessionId);
 session.openWrite("filename", 0, 0);
 session.commit(new IntentSender(ReflectionHelpers.createNullProxy(IIntentSender.class)));
}

代码示例来源:origin: org.robolectric/shadows-framework

@Implementation(minSdk = O)
 public static IAudioService getService() {
  return ReflectionHelpers.createNullProxy(IAudioService.class);
 }
}

代码示例来源:origin: org.robolectric/shadows-core

@Implementation
 public static IActivityManager getService() {
  return ReflectionHelpers.createNullProxy(IActivityManager.class);
 }
}

代码示例来源:origin: org.robolectric/shadows-framework

private static Binder createBinder(String className, String descriptor) {
 Class<IInterface> clazz;
 try {
  clazz = (Class<IInterface>) Class.forName(className);
 } catch (ClassNotFoundException e) {
  throw new RuntimeException(e);
 }
 Binder binder = new Binder();
 binder.attachInterface(ReflectionHelpers.createNullProxy(clazz), descriptor);
 return binder;
}

相关文章