@Test
  public void testCantSetPublishThenReadPermissions() throws Exception {
    Activity activity = Robolectric.buildActivity(MainActivity.class).create().get();

    LoginButton loginButton = (LoginButton) activity.findViewById(R.id.login_button);
    loginButton.setPublishPermissions("publish_actions");
    try {
      loginButton.setReadPermissions("user_location");
    } catch (UnsupportedOperationException e) {
      return;
    }
    fail();
  }
Ejemplo n.º 2
0
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    // mTextDisplayed = (TextView) view.findViewById(R.id.text_details);

    // Create facebook button and initialize permissions.
    fbLoginButton = (LoginButton) view.findViewById(R.id.login_button);
    fbLoginButton.setPublishPermissions("publish_actions");
    fbLoginButton.setFragment(this);
    fbLoginButton.registerCallback(mCallbackManager, facebookCallback);

    // Creating loginButton and setting the callback.
    twitterLoginButton = (TwitterLoginButton) view.findViewById(R.id.twitter_login_button);
    twitterLoginButton.setCallback(twitterSessionCallback);
  }
  @Test
  public void testLoginButtonWithPublishPermissions() throws Exception {
    LoginManager loginManager = mock(LoginManager.class);
    Activity activity = Robolectric.buildActivity(MainActivity.class).create().get();

    LoginButton loginButton = (LoginButton) activity.findViewById(R.id.login_button);
    ArrayList<String> permissions = new ArrayList<>();
    permissions.add("publish_actions");
    loginButton.setPublishPermissions(permissions);
    loginButton.setLoginManager(loginManager);
    loginButton.performClick();

    verify(loginManager, never()).logInWithReadPermissions(isA(Activity.class), anyCollection());
    verify(loginManager).logInWithPublishPermissions(activity, permissions);
  }