1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package net.sourceforge.acelogger.factory.test;
16
17 import java.util.List;
18
19 import org.testng.annotations.DataProvider;
20 import org.testng.annotations.Test;
21
22 import net.sourceforge.acelogger.factory.LevelFilterFactory;
23 import net.sourceforge.acelogger.level.filter.LevelFilter;
24 import net.sourceforge.acelogger.test.DataProviderHelper;
25
26 import static org.testng.Assert.assertEquals;
27 import static org.testng.Assert.assertTrue;
28
29
30
31
32
33
34
35
36 @Test
37 public class LevelFilterFactoryTest {
38
39 @DataProvider(name = "getRegisteredFiltersDataProvider")
40 public Object[][] getRegisteredFiltersDataProvider() {
41 return DataProviderHelper.loadData();
42 }
43
44 @Test(dataProvider = "getRegisteredFiltersDataProvider")
45 public void testGetRegisterdFilters(List<LevelFilter> filters) {
46 List<LevelFilter> expected = LevelFilterFactory.getRegisteredLevelFilters();
47 expected.addAll(filters);
48 for (LevelFilter currentFilter : filters) {
49 LevelFilterFactory.registerLevelFilter(currentFilter);
50 }
51 List<LevelFilter> registered = LevelFilterFactory.getRegisteredLevelFilters();
52 assertTrue(expected.containsAll(registered));
53 }
54
55 @DataProvider(name = "getDefaultLevelFilterDataProvider")
56 public Object[][] getDefaultLevelFilterDataProvider() {
57 return DataProviderHelper.loadData();
58 }
59
60 @Test(dataProvider = "getDefaultLevelFilterDataProvider")
61 public void testGetDefaultLevelFilter(LevelFilter filter) {
62 LevelFilter expected = filter;
63 if (expected == null) {
64 expected = LevelFilterFactory.getDefaultLevelFilter();
65 }
66 LevelFilterFactory.setDefaultLevelFilter(filter);
67 LevelFilter got = LevelFilterFactory.getDefaultLevelFilter();
68 assertEquals(got, expected);
69 }
70
71 @DataProvider(name = "setDefaultLevelFilterDataProvider")
72 public Object[][] setDefaultLevelFilterDataProvider() {
73 return DataProviderHelper.loadData();
74 }
75
76 @Test(dataProvider = "setDefaultLevelFilterDataProvider")
77 public void testSetDefaultLevelFilter(LevelFilter filter, LevelFilter other) {
78 LevelFilter expected = other;
79 if (expected == null) {
80 expected = LevelFilterFactory.getDefaultLevelFilter();
81 }
82 LevelFilter previous = LevelFilterFactory.setDefaultLevelFilter(filter);
83 assertEquals(previous, expected);
84 }
85
86 @DataProvider(name = "getLevelFilterDataProvider")
87 public Object[][] getLevelFilterDataProvider() {
88 return DataProviderHelper.loadData();
89 }
90
91 @Test(dataProvider = "getLevelFilterDataProvider")
92 public void testGetLevelFilter(LevelFilter filter, String identifier, LevelFilter other) {
93 LevelFilter expected = other;
94 if (expected == null) {
95 expected = LevelFilterFactory.getDefaultLevelFilter();
96 }
97 LevelFilterFactory.registerLevelFilter(filter);
98 LevelFilter got = LevelFilterFactory.getLevelFilter(identifier);
99 assertEquals(got, expected);
100 }
101
102 @Test
103 public void testSetNullFilter() {
104 List<LevelFilter> previouslyRegistered = LevelFilterFactory.getRegisteredLevelFilters();
105 LevelFilter register = LevelFilterFactory.registerLevelFilter(null);
106 List<LevelFilter> currentlyRegistered = LevelFilterFactory.getRegisteredLevelFilters();
107 assertTrue(register.equals(LevelFilterFactory.getDefaultLevelFilter())
108 && currentlyRegistered.containsAll(previouslyRegistered)
109 && currentlyRegistered.size() == previouslyRegistered.size());
110 }
111
112 }