View Javadoc
1   package com.atlassian.plugin.osgi.spring;
2   
3   import com.atlassian.plugin.osgi.spring.external.ApplicationContextPreProcessor;
4   import org.eclipse.gemini.blueprint.extender.support.ApplicationContextConfiguration;
5   import org.junit.Test;
6   import org.osgi.framework.Bundle;
7   
8   import java.util.Collections;
9   
10  import static org.junit.Assert.assertFalse;
11  import static org.junit.Assert.assertTrue;
12  import static org.mockito.Mockito.mock;
13  import static org.mockito.Mockito.when;
14  
15  public class TestNonValidatingOsgiApplicationContextCreator {
16  
17      @Test
18      public void testIsSpringPoweredNormal() {
19          ApplicationContextConfiguration config = mock(ApplicationContextConfiguration.class);
20          Bundle bundle = mock(Bundle.class);
21  
22          NonValidatingOsgiApplicationContextCreator creator = new NonValidatingOsgiApplicationContextCreator(Collections.emptyList());
23          when(config.isSpringPoweredBundle()).thenReturn(true);
24          assertTrue(creator.isSpringPoweredBundle(bundle, config));
25      }
26  
27      @Test
28      public void testIsSpringPoweredFalseNoProcessors() {
29          ApplicationContextConfiguration config = mock(ApplicationContextConfiguration.class);
30          Bundle bundle = mock(Bundle.class);
31  
32          NonValidatingOsgiApplicationContextCreator creator = new NonValidatingOsgiApplicationContextCreator(Collections.emptyList());
33          when(config.isSpringPoweredBundle()).thenReturn(false);
34          assertFalse(creator.isSpringPoweredBundle(bundle, config));
35      }
36  
37      @Test
38      public void testIsSpringPoweredFromPreProcessor() {
39          ApplicationContextConfiguration config = mock(ApplicationContextConfiguration.class);
40          Bundle bundle = mock(Bundle.class);
41          ApplicationContextPreProcessor processor = mock(ApplicationContextPreProcessor.class);
42  
43          NonValidatingOsgiApplicationContextCreator creator = new NonValidatingOsgiApplicationContextCreator(Collections.singletonList(processor));
44          when(config.isSpringPoweredBundle()).thenReturn(false);
45          when(processor.isSpringPoweredBundle(bundle)).thenReturn(true);
46          assertTrue(creator.isSpringPoweredBundle(bundle, config));
47      }
48  
49      @Test
50      public void testIsSpringPoweredFalseWithPreProcessor() {
51          ApplicationContextConfiguration config = mock(ApplicationContextConfiguration.class);
52          Bundle bundle = mock(Bundle.class);
53          ApplicationContextPreProcessor processor = mock(ApplicationContextPreProcessor.class);
54  
55          NonValidatingOsgiApplicationContextCreator creator = new NonValidatingOsgiApplicationContextCreator(Collections.singletonList(processor));
56          when(config.isSpringPoweredBundle()).thenReturn(false);
57          when(processor.isSpringPoweredBundle(bundle)).thenReturn(false);
58          assertFalse(creator.isSpringPoweredBundle(bundle, config));
59      }
60  }