use of com.haulmont.cuba.security.entity.Role in project cuba by cuba-platform.
the class OptionsGroupDsTest method testValueChangeListener.
@Test
public void testValueChangeListener() {
OptionsGroup optionsGroup = uiComponents.create(OptionsGroup.NAME);
// listener before datasource
boolean[] valueWasChanged = { false };
Consumer<HasValue.ValueChangeEvent> listener = e -> valueWasChanged[0] = true;
optionsGroup.addValueChangeListener(listener);
Datasource<Role> roleDs = getTestRoleDatasource();
roleDs.getItem().setType(RoleType.READONLY);
optionsGroup.setDatasource(roleDs, "type");
assertTrue(valueWasChanged[0]);
// reset state
valueWasChanged[0] = false;
optionsGroup.removeValueChangeListener(listener);
optionsGroup.setDatasource(null, null);
// datasource before listener
optionsGroup.setDatasource(roleDs, "type");
optionsGroup.addValueChangeListener(listener);
roleDs.getItem().setType(RoleType.DENYING);
assertTrue(valueWasChanged[0]);
}
use of com.haulmont.cuba.security.entity.Role in project cuba by cuba-platform.
the class UserRoleTest method test.
@Test
public void test() {
Transaction tx = cont.persistence().createTransaction();
try {
EntityManager em = cont.persistence().getEntityManager();
Role role = new Role();
role.setName("testRole1");
em.persist(role);
Group group = new Group();
group.setName("testGroup1");
em.persist(group);
User user = new User();
UUID userId = user.getId();
user.setLogin("testUser1");
user.setName("Test User 1");
user.setGroup(group);
em.persist(user);
UserRole userRole = new UserRole();
userRole.setUser(user);
userRole.setRole(role);
em.persist(userRole);
tx.commitRetaining();
em = cont.persistence().getEntityManager();
user = em.find(User.class, userId);
List<UserRole> userRoles = user.getUserRoles();
assertEquals(1, userRoles.size());
for (UserRole ur : userRoles) {
Role r = ur.getRole();
assertEquals(role.getName(), r.getName());
}
} finally {
tx.end();
}
}
use of com.haulmont.cuba.security.entity.Role in project cuba by cuba-platform.
the class RelationsTest method testRole.
@Test
public void testRole() {
UUID roleId = createRole();
Transaction tx = cont.persistence().createTransaction();
try {
EntityManager em = cont.persistence().getEntityManager();
Role role = em.find(Role.class, roleId);
em.remove(role);
tx.commit();
} finally {
tx.end();
}
}
use of com.haulmont.cuba.security.entity.Role in project cuba by cuba-platform.
the class SystemInfoWindow method generateInsert.
public void generateInsert() {
setCopyButtonVisible();
scriptArea.setEditable(true);
if (item instanceof Role) {
View localView = metadata.getViewRepository().getView(Role.class, View.LOCAL);
View roleView = new View(localView, Role.class, "role-export-view", true).addProperty("permissions", metadata.getViewRepository().getView(Permission.class, View.LOCAL));
item = getDsContext().getDataSupplier().reload(item, roleView);
StringBuilder result = new StringBuilder();
result.append(sqlGenerationService.generateInsertScript(item)).append("\n");
for (Permission permission : ((Role) item).getPermissions()) {
result.append(sqlGenerationService.generateInsertScript(permission)).append("\n");
}
scriptArea.setValue(result.toString());
} else {
scriptArea.setValue(sqlGenerationService.generateInsertScript(item));
}
showScriptArea();
}
Aggregations