Search in sources :

Example 16 with Invocation

use of org.jmock.api.Invocation in project gradle by gradle.

the class DefaultDomainObjectCollectionTest method allCallsActionForEachNewObjectAddedByTheAction.

@Test
public void allCallsActionForEachNewObjectAddedByTheAction() {
    @SuppressWarnings("unchecked") final Action<CharSequence> action = context.mock(Action.class);
    context.checking(new Expectations() {

        {
            oneOf(action).execute("a");
            will(new org.jmock.api.Action() {

                public Object invoke(Invocation invocation) throws Throwable {
                    container.add("c");
                    return null;
                }

                public void describeTo(Description description) {
                    description.appendText("add 'c'");
                }
            });
            oneOf(action).execute("b");
            oneOf(action).execute("c");
        }
    });
    container.add("a");
    container.add("b");
    container.all(action);
}
Also used : Expectations(org.jmock.Expectations) Action(org.gradle.api.Action) Description(org.hamcrest.Description) Invocation(org.jmock.api.Invocation) Test(org.junit.Test)

Example 17 with Invocation

use of org.jmock.api.Invocation in project intellij-community by JetBrains.

the class PathMacroManagerTest method setupApplication.

@Before
public final void setupApplication() throws Exception {
    context = new JUnit4Mockery();
    context.setImposteriser(ClassImposteriser.INSTANCE);
    myApplication = context.mock(ApplicationEx.class, "application");
    context.checking(new Expectations() {

        {
            allowing(myApplication).isUnitTestMode();
            will(returnValue(false));
            allowing(myApplication).getName();
            will(returnValue("IDEA"));
            // some tests leave invokeLater()'s after them
            allowing(myApplication).invokeLater(with(any(Runnable.class)), with(any(ModalityState.class)));
            allowing(myApplication).runReadAction(with(any(Runnable.class)));
            will(new Action() {

                @Override
                public void describeTo(final Description description) {
                    description.appendText("runs runnable");
                }

                @Override
                @Nullable
                public Object invoke(final Invocation invocation) throws Throwable {
                    ((Runnable) invocation.getParameter(0)).run();
                    return null;
                }
            });
        }
    });
    final ExtensionsArea area = Extensions.getRootArea();
    final String epName = PathMacrosCollector.MACRO_FILTER_EXTENSION_POINT_NAME.getName();
    if (!area.hasExtensionPoint(epName)) {
        area.registerExtensionPoint(epName, "com.intellij.openapi.application.PathMacroFilter");
        Disposer.register(myRootDisposable, new Disposable() {

            @Override
            public void dispose() {
                area.unregisterExtensionPoint(epName);
            }
        });
    }
}
Also used : Expectations(org.jmock.Expectations) Disposable(com.intellij.openapi.Disposable) ExtensionsArea(com.intellij.openapi.extensions.ExtensionsArea) JUnit4Mockery(org.jmock.integration.junit4.JUnit4Mockery) Action(org.jmock.api.Action) Description(org.hamcrest.Description) ApplicationEx(com.intellij.openapi.application.ex.ApplicationEx) Invocation(org.jmock.api.Invocation) ModalityState(com.intellij.openapi.application.ModalityState) Before(org.junit.Before)

Example 18 with Invocation

use of org.jmock.api.Invocation in project geode by apache.

the class AutoBalancerJUnitTest method destroyAutoBalancer.

@Test
public void destroyAutoBalancer() throws InterruptedException {
    final CountDownLatch latch = new CountDownLatch(2);
    final CountDownLatch timerLatch = new CountDownLatch(1);
    // simulate 20 milliseconds
    final int timer = 20;
    mockContext.checking(new Expectations() {

        {
            oneOf(mockAuditor).init(with(any(Properties.class)));
            allowing(mockAuditor).execute();
            allowing(mockClock).currentTimeMillis();
            will(new CustomAction("returnTime") {

                @Override
                public Object invoke(Invocation invocation) throws Throwable {
                    latch.countDown();
                    if (latch.getCount() == 0) {
                        assertTrue(timerLatch.await(1, TimeUnit.SECONDS));
                        // scheduler is destroyed before wait is over
                        fail();
                    }
                    return 1000L - timer;
                }
            });
        }
    });
    Properties props = AutoBalancerJUnitTest.getBasicConfig();
    assertEquals(2, latch.getCount());
    AutoBalancer autoR = new AutoBalancer(null, mockAuditor, mockClock, null);
    autoR.init(props);
    assertTrue(latch.await(1, TimeUnit.SECONDS));
    // after destroy no more execute will be called.
    autoR.destroy();
    timerLatch.countDown();
    TimeUnit.MILLISECONDS.sleep(2 * timer);
}
Also used : Expectations(org.jmock.Expectations) Invocation(org.jmock.api.Invocation) CustomAction(org.jmock.lib.action.CustomAction) CountDownLatch(java.util.concurrent.CountDownLatch) Properties(java.util.Properties) Test(org.junit.Test) IntegrationTest(org.apache.geode.test.junit.categories.IntegrationTest)

Example 19 with Invocation

use of org.jmock.api.Invocation in project sling by apache.

the class TopologyRequestValidatorTest method testTrustResponse.

@Test
public void testTrustResponse() throws IOException {
    final HttpServletRequest request = context.mock(HttpServletRequest.class);
    context.checking(new Expectations() {

        {
            allowing(request).getRequestURI();
            will(returnValue("/Test/Uri2"));
        }
    });
    final HttpServletResponse response = context.mock(HttpServletResponse.class);
    final Map<Object, Object> headers = new HashMap<Object, Object>();
    context.checking(new Expectations() {

        {
            allowing(response).setHeader(with(any(String.class)), with(any(String.class)));
            will(new Action() {

                public void describeTo(Description desc) {
                    desc.appendText("Setting header ");
                }

                public Object invoke(Invocation invocation) throws Throwable {
                    headers.put(invocation.getParameter(0), invocation.getParameter(1));
                    return null;
                }
            });
        }
    });
    String clearMessage = "TestMessage2";
    final String message = topologyRequestValidator.encodeMessage(clearMessage);
    topologyRequestValidator.trustMessage(response, request, message);
    final HttpEntity responseEntity = context.mock(HttpEntity.class);
    context.checking(new Expectations() {

        {
            allowing(responseEntity).getContent();
            will(returnValue(new ByteArrayInputStream(message.getBytes())));
        }
    });
    final HttpResponse resp = context.mock(HttpResponse.class);
    context.checking(new Expectations() {

        {
            allowing(resp).getFirstHeader(with(any(String.class)));
            will(new Action() {

                public void describeTo(Description desc) {
                    desc.appendText("Getting (first) header ");
                }

                public Object invoke(Invocation invocation) throws Throwable {
                    return new BasicHeader((String) invocation.getParameter(0), (String) headers.get(invocation.getParameter(0)));
                }
            });
            allowing(resp).getEntity();
            will(returnValue(responseEntity));
        }
    });
    topologyRequestValidator.isTrusted(resp);
    topologyRequestValidator.decodeMessage("/Test/Uri2", resp);
}
Also used : Expectations(org.jmock.Expectations) Action(org.jmock.api.Action) Description(org.hamcrest.Description) Invocation(org.jmock.api.Invocation) HttpEntity(org.apache.http.HttpEntity) HashMap(java.util.HashMap) HttpServletResponse(javax.servlet.http.HttpServletResponse) HttpResponse(org.apache.http.HttpResponse) HttpServletRequest(javax.servlet.http.HttpServletRequest) ByteArrayInputStream(java.io.ByteArrayInputStream) BasicHeader(org.apache.http.message.BasicHeader) Test(org.junit.Test)

Example 20 with Invocation

use of org.jmock.api.Invocation in project sling by apache.

the class RepositoryTestHelper method mockResourceResolverFactory.

public static ResourceResolverFactory mockResourceResolverFactory(final SlingRepository repositoryOrNull) throws Exception {
    Mockery context = new JUnit4Mockery() {

        {
            // @see http://www.jmock.org/threading-synchroniser.html
            setThreadingPolicy(new Synchroniser());
        }
    };
    final ResourceResolverFactory resourceResolverFactory = context.mock(ResourceResolverFactory.class);
    // final ResourceResolver resourceResolver = new MockResourceResolver();
    // final ResourceResolver resourceResolver = new
    // MockedResourceResolver();
    context.checking(new Expectations() {

        {
            allowing(resourceResolverFactory).getServiceResourceResolver(null);
            will(new Action() {

                @Override
                public Object invoke(Invocation invocation) throws Throwable {
                    return new MockedResourceResolver(repositoryOrNull);
                }

                @Override
                public void describeTo(Description arg0) {
                    arg0.appendText("whateva - im going to create a new mockedresourceresolver");
                }
            });
        }
    });
    return resourceResolverFactory;
}
Also used : Expectations(org.jmock.Expectations) JUnit4Mockery(org.jmock.integration.junit4.JUnit4Mockery) Action(org.jmock.api.Action) ResourceResolverFactory(org.apache.sling.api.resource.ResourceResolverFactory) Description(org.hamcrest.Description) Invocation(org.jmock.api.Invocation) Synchroniser(org.jmock.lib.concurrent.Synchroniser) Mockery(org.jmock.Mockery) JUnit4Mockery(org.jmock.integration.junit4.JUnit4Mockery)

Aggregations

Invocation (org.jmock.api.Invocation)25 Expectations (org.jmock.Expectations)24 Description (org.hamcrest.Description)13 Test (org.junit.Test)13 Action (org.jmock.api.Action)12 CustomAction (org.jmock.lib.action.CustomAction)12 HashMap (java.util.HashMap)5 Properties (java.util.Properties)5 JUnit4Mockery (org.jmock.integration.junit4.JUnit4Mockery)4 Before (org.junit.Before)4 Reader (java.io.Reader)3 Writer (java.io.Writer)3 Map (java.util.Map)3 DocumentReference (org.xwiki.model.reference.DocumentReference)3 Channel (com.weibo.api.motan.transport.Channel)2 MessageHandler (com.weibo.api.motan.transport.MessageHandler)2 XWikiDocument (com.xpn.xwiki.doc.XWikiDocument)2 StringReader (java.io.StringReader)2 HttpServletRequest (javax.servlet.http.HttpServletRequest)2 HttpServletResponse (javax.servlet.http.HttpServletResponse)2