1   /*
2    * This file is part of AceLogger.
3    * 
4    * AceLogger is free software: you can redistribute it and/or modify it under the terms of the GNU
5    * Lesser General Public License as published by the Free Software Foundation, either version 3 of
6    * the License, or (at your option) any later version.
7    * 
8    * AceLogger is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
9    * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10   * Lesser General Public License for more details.
11   * 
12   * You should have received a copy of the GNU Lesser General Public License along with AceLogger.
13   * If not, see <http://www.gnu.org/licenses/lgpl-3.0.html>.
14   */
15  package net.sourceforge.acelogger.filter.test;
16  
17  import org.testng.annotations.BeforeMethod;
18  import org.testng.annotations.DataProvider;
19  import org.testng.annotations.Test;
20  
21  import net.sourceforge.acelogger.level.LogLevel;
22  import net.sourceforge.acelogger.level.filter.NotEqualLevelFilter;
23  import net.sourceforge.acelogger.test.DataProviderHelper;
24  
25  import static org.testng.Assert.assertEquals;
26  
27  /**
28   * TODO: Create Doc.
29   * 
30   * @author Zardi (https://sourceforge.net/users/daniel_zardi)
31   * @version 1.0.0
32   * @since 1.0.0
33   */
34  @Test
35  public class NotEqualLevelFilterTest {
36  
37  	private NotEqualLevelFilter notEqualFilter;
38  
39  	@BeforeMethod
40  	public void setupTest() {
41  		notEqualFilter = null;
42  	}
43  
44  	@DataProvider
45  	public Object[][] identifierConstructorDataProvider() {
46  		return DataProviderHelper.loadData();
47  	}
48  
49  	@Test(dataProvider = "identifierConstructorDataProvider")
50  	public void testIdentifierConstructor(LogLevel level, boolean shouldPass) {
51  		notEqualFilter = new NotEqualLevelFilter(
52  				"NotEqualLevelFilterTest.testIdentifierConstructor");
53  		assertEquals(notEqualFilter.isSuitable(level), shouldPass);
54  	}
55  
56  	@DataProvider
57  	public Object[][] levelConstructorDataProvider() {
58  		return DataProviderHelper.loadData();
59  	}
60  
61  	@Test(dataProvider = "levelConstructorDataProvider")
62  	public void testLevelConstructor(LogLevel undesiredLevel, LogLevel level, boolean shouldPass) {
63  		notEqualFilter = new NotEqualLevelFilter("NotEqualLevelFilterTest.testLevelConstructor",
64  				undesiredLevel);
65  		assertEquals(notEqualFilter.isSuitable(level), shouldPass);
66  	}
67  
68  	@DataProvider
69  	public Object[][] setDesiredLevelDataProvider() {
70  		return DataProviderHelper.loadData();
71  	}
72  
73  	@Test(dataProvider = "setDesiredLevelDataProvider")
74  	public void testSetDesiredLevel(LogLevel undesiredLevel, LogLevel expectedResult) {
75  		notEqualFilter = new NotEqualLevelFilter("NotEqualLevelFilterTest.testSetDesiredLevel");
76  		notEqualFilter.setUndesiredLevel(undesiredLevel);
77  		assertEquals(notEqualFilter.getUndesiredLevel(), expectedResult);
78  	}
79  
80  	/**
81  	 * Tests the {@link NotEqualLevelFilter} identifier.
82  	 */
83  	@Test
84  	public void testGetIdentifier() {
85  		notEqualFilter = new NotEqualLevelFilter("NotEqualLevelFilterTest.testGetIdentifier");
86  		assertEquals(notEqualFilter.getIdentifier(), "NotEqualLevelFilterTest.testGetIdentifier");
87  	}
88  
89  }