If we go for the bulk modifications approach why not migrating completely
to JUnit5?

I remember that we had a discussion around the subject before but I cannot
find the thread at the moment.


On Mon, Dec 2, 2019, 5:58 PM Andrei Sereda <[email protected]> wrote:

> Do you think it makes sense to perform a bulk string/replace for JUnit 4 ->
> 5 annotations ? At least for simple non-parameterized / no-rules tests.
> This way IDE will automatically select correct annotations.
>
> I had some scripts prepared as part of CALCITE-2457 [1]
>
> https://issues.apache.org/jira/browse/CALCITE-2457 [1]
>
> On Mon, Dec 2, 2019 at 8:13 AM Michael Mior <[email protected]> wrote:
>
> > Thanks for noting Stamatis!
> >
> > If a particular group of tests is migrating to JUnit 5, it also
> > probably makes sense to use org.junit.jupiter.api.Assertions instead
> > of org.junit.Assert. Although the latter is still supported, I think
> > it makes sense to use things in the jupiter namespace where possible.
> >
> > --
> > Michael Mior
> > [email protected]
> >
> >
> > Le lun. 2 déc. 2019 à 07:53, Stamatis Zampetakis <[email protected]> a
> > écrit :
> > >
> > > Hello,
> > >
> > > At the moment, we can use both JUnit 4 and 5 annotations in our code
> > base.
> > > Lately, I spend some time on debugging a few test cases only to realize
> > > that old and new APIs do not mix very well. If you encounter problems
> > with
> > > your annotations then consider checking your imports. The problem might
> > lie
> > > on the fact that you are using at the same time annotations from
> > different
> > > versions.
> > >
> > > Consider for example the following test.
> > >
> > > import org.junit.Assert;
> > > import org.junit.Test;
> > > import org.junit.jupiter.api.Disabled;
> > >
> > > public class SimpleTest {
> > >
> > >   @Test
> > >   @Disabled
> > >   public void test() {
> > >     Assert.fail("Should not run because it is disabled");
> > >   }
> > > }
> > >
> > > Contrary to what people might expect the test above will run and will
> > fail
> > > with an assertion error. Changing the imports (see below) will make the
> > > test behave as expected.
> > >
> > > package org.apache.calcite;
> > >
> > > import org.junit.Assert;
> > > import org.junit.jupiter.api.Test;
> > > import org.junit.jupiter.api.Disabled;
> > >
> > > public class SimpleTest {
> > >
> > >   @Test
> > >   @Disabled
> > >   public void test() {
> > >     Assert.fail("Should not run because it is disabled");
> > >   }
> > > }
> > >
> > > Best,
> > > Stamatis
> >
>

Reply via email to