[hibernate-dev] [Hibernate Search] Added a test utility to assert produced log

Steve Ebersole steve at hibernate.org
Fri Nov 4 10:27:43 EDT 2016


I think we should consider creating a set of generic testing utils as a
separate project.  Things like LoggerInspectionRule, @ExpectedFailure,
@BeforeClassOnce, @AfterClassOnce, @Skip, etc are generally useful I find

On Fri, Nov 4, 2016 at 9:16 AM Sanne Grinovero <sanne at hibernate.org> wrote:

> Nice trick!
>
> I didn't know about the Log4j feature, but had created something
> similar for JBoss Logging; it's in the ORM project though so not
> easily reusable in all of Search components:
>  - org.hibernate.testing.logger.LoggerInspectionRule
>
> On 4 November 2016 at 13:41, Yoann Rodiere <yoann at hibernate.org> wrote:
> > Hi team,
> >
> > Just so you know, if you ever need to assert that a certain log is
> produced
> > in your JUnit tests, there's now a tool to do just that in Hibernate
> > Search: org.hibernate.search.test.util.impl.ExpectedLog4jLog [1]
> >
> > You may use it much like you would use the ExpectedException rule:
> >
> > public class MyTest {
> > @org.junit.Rule
> > public ExpectedLog4jLog logged = ExpectedLog4jLog.create();
> >
> > @Test
> > public void test() {
> > logged.expectMessage( "HSEARCH400032", "some substring I want in the same
> > log" );
> >
> > // ... Do test ...
> > }
> > }
> >
> > You can also assert more complex conditions on the logs, using
> > a org.hamcrest.Matcher<? extends LoggingEvent>, but then it's starting to
> > get a bit exotic.
> >
> > You may find an example of real-life use at [2].
> >
> > [1]
> >
> https://github.com/hibernate/hibernate-search/blob/master/engine/src/test/java/org/hibernate/search/test/util/impl/ExpectedLog4jLog.java
> > [2]
> >
> https://github.com/hibernate/hibernate-search/blob/master/elasticsearch/src/test/java/org/hibernate/search/elasticsearch/test/ElasticsearchUnsupportedFeaturesIT.java
> >
> > Cheers,
> >
> > Yoann Rodière <yoann at hibernate.org>
> > Hibernate NoORM Team
> > _______________________________________________
> > hibernate-dev mailing list
> > hibernate-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev


More information about the hibernate-dev mailing list