/** * Returns the parameter of an invocation at the given position. * * <p> * This additional answer could be used at stub time using the * <code>then|do|will{@link org.mockito.stubbing.Answer}</code> methods. For example : * </p> * * <pre class="code"><code class="java">given(person.remember(dream1, dream2, dream3, dream4)).will(returnsArgAt(3)); * daAnswer(returnsArgAt(3)).when(person).remember(dream1, dream2, dream3, dream4)</code></pre> * * @param <T> Return type of the invocation. * @return Answer that will return the second argument of the invocation. * * @since 1.9.5 */ public static <T> Answer<T> returnsArgAt(int position) { return (Answer<T>) new ReturnsArgumentAt(position); }
return (Answer<T>) new ReturnsArgumentAt(position);
return (Answer<T>) new ReturnsArgumentAt(ReturnsArgumentAt.LAST_ARGUMENT);
return (Answer<T>) new ReturnsArgumentAt(0);
return (Answer<T>) new ReturnsArgumentAt(1);
@Before public void setup() { when(interpreter.renderFlat(anyString())).thenAnswer(new ReturnsArgumentAt(0)); }
private static void mockMessagesManager() { MockMessagesManager messagesManager = mock(MockMessagesManager.class); Messages messages = mock(Messages.class); doAnswer(new ReturnsArgumentAt(0)).when(messages).get(anyString()); doReturn(messages).when(messagesManager).getMessagesInternal(anyString(), any(Locale.class)); ComponentsTestUtil.setInstance(MessagesManager.class, messagesManager); }
@Before public void setup() { when(interpreter.renderFlat(anyString())).thenAnswer(new ReturnsArgumentAt(0)); }
@Before public void setUp() throws Exception { // Init context session = new MockSession(RepositoryConstants.WEBSITE); ctx = new MockContext(); ctx.addSession(RepositoryConstants.WEBSITE, session); User user = mock(User.class); when(user.getName()).thenReturn(TEST_USER); ctx.setUser(user); MgnlContext.setInstance(ctx); // Mock scheduler schedulerModuleProvider = mock(Provider.class); SchedulerModule schedulerModule = mock(SchedulerModule.class); given(schedulerModuleProvider.get()).willReturn(schedulerModule); scheduler = mock(Scheduler.class); given(schedulerModule.getScheduler()).willReturn(scheduler); given(scheduler.getListenerManager()).willReturn(listenerManager); definition = new CommandActionDefinition(); i18n = mock(SimpleTranslator.class, new ReturnsArgumentAt(0)); item = new JcrNodeAdapter(session.getRootNode()); }
@Test public void executeAsynchronously() throws Exception { // GIVEN definition.setAsynchronous(true); definition.setCommand("qux"); JcrItemAdapter item = new JcrNodeAdapter(session.getNode("/parent/sub")); SimpleTranslator i18n = mock(SimpleTranslator.class, new ReturnsArgumentAt(0)); AbstractCommandAction<CommandActionDefinition> action = new AbstractCommandAction<>(definition, item, commandsManager, uiContext, i18n); // WHEN action.execute(); // THEN assertEquals("Stop Processing = false as it's invoke asynchronously", false, MgnlContext.getAttribute(AbstractCommandAction.COMMAND_RESULT, Context.LOCAL_SCOPE)); assertThat(action.getSuccessMessage(), equalTo(LONG_RUNNING_ACTION_NOTIFICATION)); }
appDescriptor, mock(SystemMonitor.class), mock(I18nizer.class, new ReturnsArgumentAt(0)), i18n); appInstanceControllerImpl.setAppComponentProvider(Components.getComponentProvider());