Home | History | Annotate | Download | only in plugins
      1 /*
      2  * Copyright (c) 2017 Mockito contributors
      3  * This program is made available under the terms of the MIT License.
      4  */
      5 package org.mockitousage.plugins;
      6 
      7 import org.junit.Test;
      8 import org.mockito.Mockito;
      9 import org.mockito.internal.creation.instance.Instantiator;
     10 import org.mockito.plugins.AnnotationEngine;
     11 import org.mockito.plugins.InstantiatorProvider;
     12 import org.mockito.plugins.InstantiatorProvider2;
     13 import org.mockito.plugins.MockMaker;
     14 import org.mockito.plugins.MockitoPlugins;
     15 import org.mockito.plugins.PluginSwitch;
     16 import org.mockito.plugins.StackTraceCleanerProvider;
     17 import org.mockitoutil.TestBase;
     18 
     19 import static org.junit.Assert.assertNotNull;
     20 import static org.mockito.Mockito.withSettings;
     21 
     22 public class MockitoPluginsTest extends TestBase {
     23 
     24     private final MockitoPlugins plugins = Mockito.framework().getPlugins();
     25 
     26     @Test
     27     public void provides_built_in_plugins() {
     28         assertNotNull(plugins.getInlineMockMaker());
     29         assertNotNull(plugins.getDefaultPlugin(MockMaker.class));
     30         assertNotNull(plugins.getDefaultPlugin(StackTraceCleanerProvider.class));
     31         assertNotNull(plugins.getDefaultPlugin(PluginSwitch.class));
     32         assertNotNull(plugins.getDefaultPlugin(InstantiatorProvider.class));
     33         assertNotNull(plugins.getDefaultPlugin(InstantiatorProvider2.class));
     34         assertNotNull(plugins.getDefaultPlugin(AnnotationEngine.class));
     35     }
     36 
     37     @SuppressWarnings("deprecation")
     38     @Test
     39     public void instantiator_provider_backwards_compatibility() {
     40         InstantiatorProvider provider = plugins.getDefaultPlugin(InstantiatorProvider.class);
     41         Instantiator instantiator = provider.getInstantiator(withSettings().build(MockitoPluginsTest.class));
     42 
     43         assertNotNull(instantiator.newInstance(MockitoPluginsTest.class));
     44     }
     45 }
     46