package net.bytebuddy.asm; import net.bytebuddy.description.field.FieldDescription; import net.bytebuddy.description.field.FieldList; import net.bytebuddy.description.method.MethodDescription; import net.bytebuddy.description.method.MethodList; import net.bytebuddy.description.type.TypeDescription; import net.bytebuddy.implementation.Implementation; import net.bytebuddy.pool.TypePool; import net.bytebuddy.test.utility.ObjectPropertyAssertion; import org.junit.Test; import org.objectweb.asm.ClassVisitor; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verifyZeroInteractions; public class AsmVisitorWrapperNoOpTest { private static final int FOO = 42, IGNORED = -1; @Test public void testWrapperChain() throws Exception { ClassVisitor classVisitor = mock(ClassVisitor.class); assertThat(AsmVisitorWrapper.NoOp.INSTANCE.wrap(mock(TypeDescription.class), classVisitor, mock(Implementation.Context.class), mock(TypePool.class), new FieldList.Empty<FieldDescription.InDefinedShape>(), new MethodList.Empty<MethodDescription>(), IGNORED, IGNORED), is(classVisitor)); verifyZeroInteractions(classVisitor); } @Test public void testReaderFlags() throws Exception { assertThat(AsmVisitorWrapper.NoOp.INSTANCE.mergeReader(FOO), is(FOO)); } @Test public void testWriterFlags() throws Exception { assertThat(AsmVisitorWrapper.NoOp.INSTANCE.mergeWriter(FOO), is(FOO)); } @Test public void testObjectProperties() throws Exception { ObjectPropertyAssertion.of(AsmVisitorWrapper.NoOp.class).apply(); } }