View Javadoc
1   package io.github.magwas.inez.element.tests;
2   
3   import static org.mockito.ArgumentMatchers.any;
4   import static org.mockito.Mockito.mock;
5   import static org.mockito.Mockito.when;
6   
7   import java.lang.reflect.Constructor;
8   
9   import io.github.magwas.inez.element.BridiElement;
10  import io.github.magwas.inez.element.BridiElementFactory;
11  
12  public class BridiElementFactoryStub {
13  	public static BridiElementFactory stub() throws NoSuchMethodException {
14  		BridiElementFactory mock = mock(BridiElementFactory.class);
15  		Constructor<BridiElement> declaredConstructor = BridiElement.class.getDeclaredConstructor(String.class);
16  		declaredConstructor.setAccessible(true);
17  		when(mock.apply(any())).thenAnswer(invocation -> {
18  			String argument = invocation.getArgument(0, String.class);
19  			return declaredConstructor.newInstance(argument);
20  		});
21  		return mock;
22  	}
23  }