#612 Check if plugin is permission system within method itself

- Iterate over all values within the method
- Bug fix: change method to use pluginName field, and not name
This commit is contained in:
ljacqu
2016-06-04 22:40:30 +02:00
parent 2a4bb483a3
commit 4fe26f08d4
3 changed files with 58 additions and 14 deletions
@@ -0,0 +1,45 @@
package fr.xephi.authme.permission;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.hasItem;
import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.nullValue;
import static org.junit.Assert.assertThat;
/**
* Test for {@link PermissionsSystemType}.
*/
public class PermissionsSystemTypeTest {
@Test
public void shouldHaveDefinedAndUniqueNames() {
// given / when / then
List<String> names = new ArrayList<>(PermissionsSystemType.values().length);
List<String> pluginNames = new ArrayList<>(PermissionsSystemType.values().length);
for (PermissionsSystemType system : PermissionsSystemType.values()) {
assertThat("Name for enum entry '" + system + "' is not null",
system.getName(), not(nullValue()));
assertThat("Plugin name for enum entry '" + system + "' is not null",
system.getPluginName(), not(nullValue()));
assertThat("Only one enum entry has name '" + system.getName() + "'",
names, not(hasItem(system.getName())));
assertThat("Only one enum entry has plugin name '" + system.getPluginName() + "'",
pluginNames, not(hasItem(system.getPluginName())));
names.add(system.getName());
pluginNames.add(system.getPluginName());
}
}
@Test
public void shouldRecognizePermissionSystemType() {
assertThat(PermissionsSystemType.isPermissionSystem("bogus"), equalTo(false));
assertThat(PermissionsSystemType.isPermissionSystem("PermissionsBukkit"), equalTo(true));
}
}