[ 
https://issues.apache.org/jira/browse/SOLR-9081?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15314434#comment-15314434
 ] 

Alan Woodward commented on SOLR-9081:
-------------------------------------

D'oh, thanks Hoss.

> Make SolrTestCaseJ4.beforeClass() / .afterClass() public so it works with 
> Mockito
> ---------------------------------------------------------------------------------
>
>                 Key: SOLR-9081
>                 URL: https://issues.apache.org/jira/browse/SOLR-9081
>             Project: Solr
>          Issue Type: Bug
>          Components: Tests
>    Affects Versions: 5.5, 5.5.1, 6.0, 6.0.1
>            Reporter: Georg Sorst
>            Assignee: Alan Woodward
>            Priority: Blocker
>             Fix For: 6.1
>
>         Attachments: SOLR-9081.patch
>
>
> {{SolrTestCaseJ4.beforeClass()}} / {{SolrTestCaseJ4.afterClass()}} are 
> currently defined as {{private static void}}. This causes problems with 
> Mockito, which requires all test framework methods (including 
> {{@BeforeClass}} / {{@AfterClass}}) to be {{public}}. 
> The following test case will show this:
> {code:title=MockitoTest.java|borderStyle=solid}
> package com.example;
> import org.apache.solr.SolrTestCaseJ4;
> import org.junit.Test;
> import org.junit.runner.RunWith;
> import org.mockito.runners.MockitoJUnitRunner;
> @RunWith(MockitoJUnitRunner.class)
> public class MockitoTest extends SolrTestCaseJ4 {
>     @Test
>     public void testSomething() {
>       /* Nothing to do, the test runner will fail right away */
>     }
> }
> {code}
> It will fail with {{java.lang.Exception: Method beforeClass() should be 
> public}}
> The very trivial fix is to change both methods to {{public static void}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to