Skip to content
Snippets Groups Projects
Commit 032148ba authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Minor changes

parent ac7b3dc1
No related branches found
No related tags found
No related merge requests found
......@@ -3,7 +3,6 @@ package it.inaf.ia2.gms.authn;
import java.util.List;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.security.oauth2.client.EnableOAuth2Sso;
import org.springframework.boot.autoconfigure.security.oauth2.resource.DefaultUserInfoRestTemplateFactory;
import org.springframework.boot.autoconfigure.security.oauth2.resource.UserInfoRestTemplateCustomizer;
import org.springframework.boot.autoconfigure.security.oauth2.resource.UserInfoRestTemplateFactory;
......@@ -22,7 +21,6 @@ import org.springframework.security.oauth2.provider.token.RemoteTokenServices;
* Boot ResourceServerTokenServicesConfiguration.
*/
@Configuration
@EnableOAuth2Sso
public class OAuth2Config extends AuthorizationServerEndpointsConfiguration {
@Value("${security.oauth2.resource.jwk.key-set-uri}")
......
package it.inaf.ia2.gms.authn;
import org.springframework.boot.autoconfigure.security.oauth2.client.EnableOAuth2Sso;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.annotation.Order;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
@Order(1000)
@EnableOAuth2Sso
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
public void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.csrf().disable();
}
}
......@@ -25,6 +25,7 @@ public class GroupsController {
@Autowired
private SessionData session;
@Autowired
private UsersService usersService;
@Autowired
......
......@@ -30,7 +30,7 @@ public class PaginatedData<T> {
} else {
int firstElementIndex = (currentPage - 1) * pageSize;
int lastElementIndex = Math.min(currentPage * pageSize - 1, totalItems - 1);
items = new ArrayList<>(allItems.subList(firstElementIndex, lastElementIndex));
items = new ArrayList<>(allItems.subList(firstElementIndex, lastElementIndex + 1));
}
links = new ArrayList<>();
......
......@@ -18,6 +18,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import org.springframework.transaction.annotation.Transactional;
@Service
public class GroupsService {
......@@ -47,6 +48,7 @@ public class GroupsService {
}
}
@Transactional
public Group addGroup(String parentId, String groupName, User user) {
Group parent = getGroupById(parentId);
......@@ -70,6 +72,7 @@ public class GroupsService {
return group;
}
@Transactional
public List<GroupNode> getSubgroups(Group parent, User user) {
List<UserGroupPermission> permissions = getAllPermissions(user);
......@@ -97,7 +100,7 @@ public class GroupsService {
GroupNode groupNode = nodesMap.get(group.getId());
if (groupNode == null) {
return null;
return new ArrayList<>();
}
return groupNode.getPermissions();
}
......
......@@ -15,3 +15,4 @@ spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
spring.datasource.url=jdbc:mysql://localhost:3306/gms?useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=gms
spring.datasource.password=gms
#spring.jpa.open-in-view=false
package it.inaf.ia2.gms.model;
import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class PaginatedDataTest {
@Test
public void testPagination() {
List<Integer> allItems = new ArrayList<>();
for (int i = 1; i <= 30; i++) {
allItems.add(i);
}
PaginatedData<Integer> paginatedData = new PaginatedData<>(allItems, 2, 10);
assertEquals(10, paginatedData.getItems().size());
assertEquals(11, (int) paginatedData.getItems().get(0));
assertEquals(20, (int) paginatedData.getItems().get(9));
assertEquals(30, paginatedData.getTotalItems());
assertEquals(3, paginatedData.getTotalPages());
assertFalse(paginatedData.isHasPreviousPages());
assertFalse(paginatedData.isHasFollowingPages());
assertEquals(10, paginatedData.getPageSize());
assertEquals(3, paginatedData.getLinks().size());
assertEquals(1, (int) paginatedData.getLinks().get(0));
assertEquals(2, (int) paginatedData.getLinks().get(1));
assertEquals(3, (int) paginatedData.getLinks().get(2));
}
@Test
public void testLotOfPages() {
List<Integer> allItems = new ArrayList<>();
for (int i = 1; i <= 200; i++) {
allItems.add(i);
}
PaginatedData<Integer> paginatedData = new PaginatedData<>(allItems, 8, 10);
assertEquals(10, paginatedData.getItems().size());
assertEquals(71, (int) paginatedData.getItems().get(0));
assertEquals(80, (int) paginatedData.getItems().get(9));
assertEquals(200, paginatedData.getTotalItems());
assertEquals(20, paginatedData.getTotalPages());
assertTrue(paginatedData.isHasPreviousPages());
assertTrue(paginatedData.isHasFollowingPages());
assertEquals(10, paginatedData.getPageSize());
assertEquals(5, paginatedData.getLinks().size());
assertEquals(6, (int) paginatedData.getLinks().get(0));
assertEquals(10, (int) paginatedData.getLinks().get(4));
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment