View Javadoc
1   package com.atlassian.plugin.event.events;
2   
3   import com.atlassian.plugin.ModuleDescriptor;
4   import org.junit.Test;
5   import org.junit.runner.RunWith;
6   import org.mockito.Mock;
7   import org.mockito.runners.MockitoJUnitRunner;
8   
9   import static org.hamcrest.MatcherAssert.assertThat;
10  import static org.hamcrest.Matchers.is;
11  
12  @RunWith(MockitoJUnitRunner.class)
13  public class TestPluginModuleEvents {
14      @Mock
15      private ModuleDescriptor<?> moduleDescriptor;
16  
17      @Test
18      public void beforePluginModuleDisabledEventGetters() {
19          //noinspection deprecation
20          final BeforePluginModuleDisabledEvent beforePluginModuleDisabledEvent =
21                  new BeforePluginModuleDisabledEvent(moduleDescriptor, true);
22          assertModuleDescriptor(beforePluginModuleDisabledEvent.getModule());
23          assertThat(beforePluginModuleDisabledEvent.isPersistent(), is(true));
24      }
25  
26      @Test
27      public void pluginModuleDisablingEventGetters() {
28          final PluginModuleDisablingEvent pluginModuleDisablingEvent =
29                  new PluginModuleDisablingEvent(moduleDescriptor, true);
30          assertModuleDescriptor(pluginModuleDisablingEvent.getModule());
31          assertThat(pluginModuleDisablingEvent.isPersistent(), is(true));
32      }
33  
34      @Test
35      public void pluginModuleAvailableEventGetters() {
36          final PluginModuleAvailableEvent pluginModuleAvailableEvent =
37                  new PluginModuleAvailableEvent(moduleDescriptor);
38          assertModuleDescriptor(pluginModuleAvailableEvent.getModule());
39      }
40  
41      @Test
42      public void pluginModuleDisabledEventGetters() {
43          final PluginModuleDisabledEvent pluginModuleDisabledEvent =
44                  new PluginModuleDisabledEvent(moduleDescriptor, true);
45          assertModuleDescriptor(pluginModuleDisabledEvent.getModule());
46          assertThat(pluginModuleDisabledEvent.isPersistent(), is(true));
47      }
48  
49      @Test
50      public void pluginModuleEnabledEventGetters() {
51          final PluginModuleEnabledEvent pluginModuleEnabledEvent =
52                  new PluginModuleEnabledEvent(moduleDescriptor);
53          assertModuleDescriptor(pluginModuleEnabledEvent.getModule());
54      }
55  
56      @Test
57      public void pluginModuleUnavailableEventGetters() {
58          final PluginModuleUnavailableEvent pluginModuleUnavailableEvent =
59                  new PluginModuleUnavailableEvent(moduleDescriptor);
60          assertModuleDescriptor(pluginModuleUnavailableEvent.getModule());
61      }
62  
63      private void assertModuleDescriptor(final ModuleDescriptor<?> module) {
64          // The cast here works around problems with type matching
65          assertThat(module, is((Object) moduleDescriptor));
66      }
67  }