use of org.ff4j.security.AuthorizationsManager in project ff4j by ff4j.
the class TestConnected method testCmdConnect.
@Test
public void testCmdConnect() {
processor.evaluate("connect dev -u admin -p admin");
Assert.assertEquals("dev", processor.getCurrentEnv());
FF4jCliDisplay.displayPrompt(processor.getCurrentEnv());
processor.evaluate("conf");
processor.evaluate("ls");
processor.evaluate("list");
processor.evaluate("features");
processor.evaluate("properties");
processor.evaluate("enableAudit");
Assert.assertTrue(processor.getCurrentFF4J().isEnableAudit());
processor.evaluate("disableAudit");
Assert.assertFalse(processor.getCurrentFF4J().isEnableAudit());
processor.evaluate("enable");
processor.evaluate("enable -f notexist");
processor.evaluate("enable -f first");
processor.evaluate("disable");
processor.evaluate("disable -f notexist");
processor.evaluate("disable -f first");
processor.evaluate("enableGroup");
processor.evaluate("enableGroup -g notexist");
processor.evaluate("enableGroup -g GRP1");
processor.evaluate("disableGroup");
processor.evaluate("disableGroup -g notexist");
processor.evaluate("disableGroup -g GRP1");
// KO, no parameter
processor.evaluate("grant");
// KO, missing parameter f
processor.evaluate("grant -r XX");
// KO, invalid feature name
processor.evaluate("grant -r XX -f notExist");
// OK
processor.evaluate("grant -r XX -f first");
// KO, no parameter
processor.evaluate("revoke");
// KO, missing parameter f
processor.evaluate("revoke -r YY");
// KO, invalid feature name
processor.evaluate("revoke -r YY -f notExist");
// KO, invalid role
processor.evaluate("revoke -r YY -f first");
// OK
processor.evaluate("revoke -r USER -f first");
// KO, no parameter
processor.evaluate("addToGroup");
// KO, missing parameter f
processor.evaluate("addToGroup -g GRP1");
// KO, missing parameter g
processor.evaluate("addToGroup -f first");
// KO, invalid feature name
processor.evaluate("addToGroup -g GRP1 -f notExist");
// OK
processor.evaluate("addToGroup -g GRP1 -f first");
// KO, no parameter
processor.evaluate("removeFromGroup");
// KO, missing parameter f
processor.evaluate("removeFromGroup -g GRP1");
// KO, missing parameter g
processor.evaluate("removeFromGroup -f first");
// KO, invalid feature name
processor.evaluate("removeFromGroup -g GRP1 -f notExist");
// KO, not good group
processor.evaluate("removeFromGroup -g GRP2 -f first");
// OK, not good group
processor.evaluate("removeFromGroup -g GRP1 -f first");
// KO, no parameter
processor.evaluate("update");
// KO, missing parameter v
processor.evaluate("update -p a");
// KO, property does not exist
processor.evaluate("update -p KO -v AMER");
// KO, invalid value
processor.evaluate("update -p g -v KOKO");
// OK
processor.evaluate("update -p g -v DEBUG");
processor.evaluate("InvalidCommand");
// limits
processor.getCurrentFF4J().setAuthorizationsManager(new AuthorizationsManager() {
public String toJson() {
return "dummy";
}
public Set<String> listAllPermissions() {
return new HashSet<String>();
}
public Set<String> getCurrentUserPermissions() {
return new HashSet<String>();
}
public String getCurrentUserName() {
return "dummy";
}
});
processor.getCurrentFF4J().getFeatureStore().clear();
processor.getCurrentFF4J().getPropertiesStore().clear();
processor.evaluate("conf");
processor.evaluate("ls");
processor.evaluate("quit");
processor.evaluate("ls");
}
Aggregations