1 package com.atlassian.plugin.predicate;
2
3 import java.util.Arrays;
4 import java.util.List;
5
6 import com.atlassian.plugin.Plugin;
7
8 import org.junit.Test;
9
10 import static org.hamcrest.MatcherAssert.assertThat;
11 import static org.hamcrest.core.Is.is;
12 import static org.mockito.Mockito.mock;
13 import static org.mockito.Mockito.when;
14
15 public class TestPluginKeyExcludePatternsPredicate
16 {
17 @Test
18 public void naiveExamples()
19 {
20 final List<String> excluded = Arrays.asList("com\\.atlassian\\.end", "com\\.atlassian\\.part\\..*");
21 final PluginPredicate predicate = new PluginKeyExcludePatternsPredicate(excluded);
22 assertThat(predicate.matches(pluginWithKey("com.atlassian.end")), is(false));
23 assertThat(predicate.matches(pluginWithKey("com.atlassian.ene")), is(true));
24 assertThat(predicate.matches(pluginWithKey("com.atlassian.enda")), is(true));
25 assertThat(predicate.matches(pluginWithKey("com.atlassian.part")), is(true));
26 assertThat(predicate.matches(pluginWithKey("com.atlassian.part.a")), is(false));
27 assertThat(predicate.matches(pluginWithKey("com.atlassian.part.b")), is(false));
28 }
29
30 private Plugin pluginWithKey(final String key)
31 {
32 final Plugin plugin = mock(Plugin.class);
33 when(plugin.getKey()).thenReturn(key);
34 return plugin;
35 }
36 }