From a30c3af09c6aab1966bc4d6e384b30f5e8981c4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Sun, 8 Nov 2020 16:55:56 +0100 Subject: [PATCH 1/4] Part 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Woźniak --- .../main/java/com/plannaplan/Swagger2Config.java | 2 +- .../controllers/CommisionController.java | 2 +- .../responses/models/CommisionResponse.java | 7 +++++++ .../responses/models/DefaultGroupResponse.java | 15 +++++++++++++++ .../responses/models/GetCourseGroupsResponse.java | 3 +++ .../responses/models/GetCoursesResponse.java | 3 +++ .../models/GetCoursesWithGroupsResponse.java | 3 +++ .../models/GetCurrentAssignmentsResponse.java | 3 +++ .../models/SearchForStudentsResponse.java | 3 +++ .../models/WithCapacityGroupResponse.java | 2 ++ 10 files changed, 41 insertions(+), 2 deletions(-) diff --git a/restservice/src/main/java/com/plannaplan/Swagger2Config.java b/restservice/src/main/java/com/plannaplan/Swagger2Config.java index 5ccbe90..b1bd6d6 100755 --- a/restservice/src/main/java/com/plannaplan/Swagger2Config.java +++ b/restservice/src/main/java/com/plannaplan/Swagger2Config.java @@ -19,7 +19,7 @@ public class Swagger2Config extends WebMvcConfigurationSupport { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select() - .apis(RequestHandlerSelectors.basePackage("com.plannaplan.controllers")).paths(PathSelectors.any()) + .apis(RequestHandlerSelectors.basePackage("com.plannaplan")).paths(PathSelectors.any()) .build(); } diff --git a/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java b/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java index ef578c0..03c835c 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/CommisionController.java @@ -37,7 +37,7 @@ import org.springframework.web.bind.annotation.RequestMapping; @RestController @CrossOrigin @RequestMapping("/api/" + App.API_VERSION + "/commisions") -@Api(tags = { "Commisions" }, value = "Commisions", description = "Commision is representation of student selected assignments at time. All assignments are attached to some commision so we can see current assignments and also browse histroy of changes for given user") +@Api(tags = { "Commisions" }, value = "Commisions", description = "Commision is representation of student selected assignments at time. All assignments are attached to some commision so we can see current assignments and also browse history of changes for given user") public class CommisionController extends TokenBasedController { @Autowired diff --git a/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java index 585d871..29e04b4 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java @@ -4,8 +4,15 @@ import java.sql.Timestamp; import com.plannaplan.entities.Commision; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +@ApiModel(description = "Response shows information about commision", value = "CommisionResponse") public class CommisionResponse { + @ApiModelProperty(value = "ID created by database") private Long id; + + @ApiModelProperty(value = "Timestamp where the user commit the commision") private Timestamp commisionDate; public CommisionResponse(Commision commision) { diff --git a/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java index 6054be1..72659cc 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java @@ -4,13 +4,28 @@ import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Groups; import com.plannaplan.types.GroupType; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +@ApiModel(description = "Response shows information about given group", value = "DefaultGroupResponse") public class DefaultGroupResponse { + @ApiModelProperty(value = "ID created by database.") private Long id; + + @ApiModelProperty(value = "Value shows what day when the course is. Example 0 is Monday.") private int day; + + @ApiModelProperty(value = "Value shows time when the course takes.") private String time; + + @ApiModelProperty(value = "Value shows degree, name and surname.") private String lecturer; + + @ApiModelProperty(value = "Value shows room where the class takes.") private String room; + + @ApiModelProperty(value = "Value shows kind of group. The types are LECTURE or CLASS.") private GroupType type; public DefaultGroupResponse(Groups group) { diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java index c07bede..f2bcc45 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java @@ -3,6 +3,9 @@ package com.plannaplan.responses.models; import java.util.ArrayList; import java.util.List; +import io.swagger.annotations.ApiModel; + +@ApiModel(description = "Response shows information about groups to given course.", value = "DefaultGroupResponse") public class GetCourseGroupsResponse { private List lectures = new ArrayList<>(); diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java index 565eb80..c76157f 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java @@ -3,6 +3,9 @@ package com.plannaplan.responses.models; import com.plannaplan.entities.Course; import com.plannaplan.responses.models.abstracts.CoursesResponse; +import io.swagger.annotations.ApiModel; + +@ApiModel(description = "Response shows information about course.", value = "DefaultGroupResponse") public class GetCoursesResponse extends CoursesResponse { public GetCoursesResponse(Course course) { diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java index 404366d..0dd2d49 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java @@ -7,6 +7,9 @@ import com.plannaplan.entities.Course; import com.plannaplan.responses.models.abstracts.CoursesResponse; import com.plannaplan.types.GroupType; +import io.swagger.annotations.ApiModel; + +@ApiModel(description = "Response shows information about groups to given course.", value = "GetCoursesWithGroupsResponse") public class GetCoursesWithGroupsResponse extends CoursesResponse { private List lectures = new ArrayList<>(); diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java index 6296a87..416e61f 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java @@ -4,6 +4,9 @@ import com.plannaplan.entities.Course; import com.plannaplan.entities.Groups; import com.plannaplan.types.GroupType; +import io.swagger.annotations.ApiModel; + +@ApiModel(description = "Response shows information about given assigment to course.", value = "GetCurrentAssignmentsResponse") public class GetCurrentAssignmentsResponse { private Long id; private String name; diff --git a/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java index 01602be..5e4b2b6 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java @@ -2,6 +2,9 @@ package com.plannaplan.responses.models; import com.plannaplan.entities.User; +import io.swagger.annotations.ApiModel; + +@ApiModel(description = "Response shows information about user.", value = "SearchForStudentsResponse") public class SearchForStudentsResponse { private Long id; diff --git a/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java index 4b40dc4..ad422e6 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java @@ -2,7 +2,9 @@ package com.plannaplan.responses.models; import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Groups; +import io.swagger.annotations.ApiModel; +@ApiModel(description = "Response shows information about group with included capacity.", value = "WithCapacityGroupResponse") public class WithCapacityGroupResponse extends DefaultGroupResponse { private int capacity; From 035de011f2e65e35605f22e6bc79dc099b85e950 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Sun, 8 Nov 2020 17:20:00 +0100 Subject: [PATCH 2/4] Part 2 has been ended. The Part 3: chanaged test --- .../controllers/AssignmentsController.java | 4 +- .../controllers/CoursesController.java | 8 ++-- .../controllers/GroupController.java | 6 +-- .../controllers/UsersController.java | 6 +-- .../mappers/AssignmentResponseMappers.java | 10 ++--- .../mappers/CoursesResponseMappers.java | 12 +++--- .../responses/mappers/GroupsMappers.java | 38 +++++++++---------- .../mappers/UserResponseMappers.java | 6 +-- ...sResponse.java => AssignmentResponse.java} | 20 +++++----- .../responses/models/CommisionResponse.java | 2 +- ...nse.java => CourseWithGroupsResponse.java} | 6 +-- ...ponse.java => CoursesDefaultResponse.java} | 6 +-- ...se.java => CoursesWithGroupsResponse.java} | 18 ++++----- ...esponse.java => GroupDefaultResponse.java} | 8 ++-- ...se.java => GroupWithCapacityResponse.java} | 8 ++-- ...tudentsResponse.java => UserResponse.java} | 6 +-- 16 files changed, 82 insertions(+), 82 deletions(-) rename restservice/src/main/java/com/plannaplan/responses/models/{GetCurrentAssignmentsResponse.java => AssignmentResponse.java} (53%) rename restservice/src/main/java/com/plannaplan/responses/models/{GetCourseGroupsResponse.java => CourseWithGroupsResponse.java} (72%) rename restservice/src/main/java/com/plannaplan/responses/models/{GetCoursesResponse.java => CoursesDefaultResponse.java} (65%) rename restservice/src/main/java/com/plannaplan/responses/models/{GetCoursesWithGroupsResponse.java => CoursesWithGroupsResponse.java} (53%) rename restservice/src/main/java/com/plannaplan/responses/models/{DefaultGroupResponse.java => GroupDefaultResponse.java} (90%) rename restservice/src/main/java/com/plannaplan/responses/models/{WithCapacityGroupResponse.java => GroupWithCapacityResponse.java} (64%) rename restservice/src/main/java/com/plannaplan/responses/models/{SearchForStudentsResponse.java => UserResponse.java} (83%) diff --git a/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java b/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java index 7db4726..2f07c2a 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/AssignmentsController.java @@ -16,7 +16,7 @@ import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Commision; import com.plannaplan.entities.User; import com.plannaplan.responses.mappers.AssignmentResponseMappers; -import com.plannaplan.responses.models.GetCurrentAssignmentsResponse; +import com.plannaplan.responses.models.AssignmentResponse; import com.plannaplan.services.AssignmentService; import com.plannaplan.services.CommisionService; @@ -40,7 +40,7 @@ public class AssignmentsController extends TokenBasedController { @GetMapping("/user") @ApiOperation(value = "Return user current assignemts (from newest commision). STUDENT Token needs to be provided.") - public ResponseEntity> getCurrentAssignments() throws Exception { + public ResponseEntity> getCurrentAssignments() throws Exception { User user = this.getCurrentUser().orElseThrow(() -> new NullPointerException("User not found")); Optional com = this.commisionService.getNewestCommision(user); diff --git a/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java b/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java index f6ef2c5..5e9243d 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/CoursesController.java @@ -5,8 +5,8 @@ import java.util.List; import com.plannaplan.App; import com.plannaplan.entities.Course; import com.plannaplan.responses.mappers.CoursesResponseMappers; -import com.plannaplan.responses.models.GetCoursesResponse; -import com.plannaplan.responses.models.GetCoursesWithGroupsResponse; +import com.plannaplan.responses.models.CoursesDefaultResponse; +import com.plannaplan.responses.models.CoursesWithGroupsResponse; import com.plannaplan.services.CourseService; import org.springframework.beans.factory.annotation.Autowired; @@ -39,11 +39,11 @@ public class CoursesController { @RequestParam(name = "groups", defaultValue = "false") @ApiParam(value = "Boolean if you want to have resopnse with associated groups or without") Boolean groups) { List courses = this.courseService.getAllCourses(); if (groups) { - final List response = CoursesResponseMappers + final List response = CoursesResponseMappers .mapToGetCoursesWithGroupsResponse(courses); return new ResponseEntity<>(response, HttpStatus.OK); } - final List response = CoursesResponseMappers.mapToGetCoursesResponse(courses); + final List response = CoursesResponseMappers.mapToGetCoursesResponse(courses); return new ResponseEntity<>(response, HttpStatus.OK); } } \ No newline at end of file diff --git a/restservice/src/main/java/com/plannaplan/controllers/GroupController.java b/restservice/src/main/java/com/plannaplan/controllers/GroupController.java index 811f43a..65b6c4e 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/GroupController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/GroupController.java @@ -5,8 +5,8 @@ import java.util.List; import com.plannaplan.App; import com.plannaplan.entities.Groups; import com.plannaplan.responses.mappers.GroupsMappers; -import com.plannaplan.responses.models.DefaultGroupResponse; -import com.plannaplan.responses.models.GetCourseGroupsResponse; +import com.plannaplan.responses.models.GroupDefaultResponse; +import com.plannaplan.responses.models.CourseWithGroupsResponse; import com.plannaplan.services.GroupService; import org.springframework.beans.factory.annotation.Autowired; @@ -35,7 +35,7 @@ public class GroupController { @GetMapping("/course/{id}") @ApiOperation(value = "Return list of lectures and classes (if present) given course") - public ResponseEntity> getCourses( + public ResponseEntity> getCourses( @PathVariable(name = "id") Long id, @RequestParam(name = "capacity", defaultValue = "true") @ApiParam(value = "Boolean if we want to have capacity field in response") Boolean capacity) { List groups = this.groupService.getGroupsByCourse(id); diff --git a/restservice/src/main/java/com/plannaplan/controllers/UsersController.java b/restservice/src/main/java/com/plannaplan/controllers/UsersController.java index 4cbe585..f662260 100755 --- a/restservice/src/main/java/com/plannaplan/controllers/UsersController.java +++ b/restservice/src/main/java/com/plannaplan/controllers/UsersController.java @@ -5,7 +5,7 @@ import java.util.List; import com.plannaplan.App; import com.plannaplan.entities.User; import com.plannaplan.responses.mappers.UserResponseMappers; -import com.plannaplan.responses.models.SearchForStudentsResponse; +import com.plannaplan.responses.models.UserResponse; import com.plannaplan.services.UserService; import org.springframework.beans.factory.annotation.Autowired; @@ -36,10 +36,10 @@ public class UsersController { @GetMapping("/student/search") @PreAuthorize("hasRole('ROLE_DEANERY')") @ApiOperation(value = "Serch for user by providing query. If query is empty it will return all students. You need token with DEANERY role to call this") - public ResponseEntity> configApp( + public ResponseEntity> configApp( @RequestParam("query") @ApiParam(value = "Query to filter all students. If empty will match everyone") String query) { final List searches = this.userService.searchForStudents(query); - final List response = UserResponseMappers.mapToDefaultResponse(searches); + final List response = UserResponseMappers.mapToDefaultResponse(searches); return new ResponseEntity<>(response, HttpStatus.OK); } } diff --git a/restservice/src/main/java/com/plannaplan/responses/mappers/AssignmentResponseMappers.java b/restservice/src/main/java/com/plannaplan/responses/mappers/AssignmentResponseMappers.java index b82bd7a..8ce1745 100755 --- a/restservice/src/main/java/com/plannaplan/responses/mappers/AssignmentResponseMappers.java +++ b/restservice/src/main/java/com/plannaplan/responses/mappers/AssignmentResponseMappers.java @@ -8,13 +8,13 @@ import java.util.Map; import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Course; import com.plannaplan.entities.Groups; -import com.plannaplan.responses.models.GetCurrentAssignmentsResponse; +import com.plannaplan.responses.models.AssignmentResponse; import com.plannaplan.types.GroupType; public class AssignmentResponseMappers { - public static final List mapToResponse(List assignments) { - List response = new ArrayList<>(); + public static final List mapToResponse(List assignments) { + List response = new ArrayList<>(); HashMap> courses = new HashMap<>(); assignments.stream().forEach((Assignment assignment) -> { final Groups group = assignment.getGroup(); @@ -29,14 +29,14 @@ public class AssignmentResponseMappers { final Course course = entry.getKey(); final List courseGroups = entry.getValue(); if (courseGroups.size() == 1) { - response.add(new GetCurrentAssignmentsResponse(course, courseGroups.get(0))); + response.add(new AssignmentResponse(course, courseGroups.get(0))); } if (courseGroups.size() == 2) { final Groups lecture = courseGroups.stream().filter(o -> o.getType() == GroupType.LECTURE).findFirst() .get(); final Groups classes = courseGroups.stream().filter(o -> o.getType() == GroupType.CLASS).findFirst() .get(); - response.add(new GetCurrentAssignmentsResponse(course, lecture, classes)); + response.add(new AssignmentResponse(course, lecture, classes)); } } diff --git a/restservice/src/main/java/com/plannaplan/responses/mappers/CoursesResponseMappers.java b/restservice/src/main/java/com/plannaplan/responses/mappers/CoursesResponseMappers.java index 24958c5..5d9c1df 100755 --- a/restservice/src/main/java/com/plannaplan/responses/mappers/CoursesResponseMappers.java +++ b/restservice/src/main/java/com/plannaplan/responses/mappers/CoursesResponseMappers.java @@ -5,16 +5,16 @@ import java.util.Objects; import java.util.stream.Collectors; import com.plannaplan.entities.Course; -import com.plannaplan.responses.models.GetCoursesResponse; -import com.plannaplan.responses.models.GetCoursesWithGroupsResponse; +import com.plannaplan.responses.models.CoursesDefaultResponse; +import com.plannaplan.responses.models.CoursesWithGroupsResponse; public class CoursesResponseMappers { - public static final List mapToGetCoursesResponse(List courses) { - return courses.stream().filter(Objects::nonNull).map(GetCoursesResponse::new).collect(Collectors.toList()); + public static final List mapToGetCoursesResponse(List courses) { + return courses.stream().filter(Objects::nonNull).map(CoursesDefaultResponse::new).collect(Collectors.toList()); } - public static final List mapToGetCoursesWithGroupsResponse(List courses) { - return courses.stream().filter(Objects::nonNull).map(GetCoursesWithGroupsResponse::new) + public static final List mapToGetCoursesWithGroupsResponse(List courses) { + return courses.stream().filter(Objects::nonNull).map(CoursesWithGroupsResponse::new) .collect(Collectors.toList()); } } diff --git a/restservice/src/main/java/com/plannaplan/responses/mappers/GroupsMappers.java b/restservice/src/main/java/com/plannaplan/responses/mappers/GroupsMappers.java index 401a5a1..8fa6c0f 100755 --- a/restservice/src/main/java/com/plannaplan/responses/mappers/GroupsMappers.java +++ b/restservice/src/main/java/com/plannaplan/responses/mappers/GroupsMappers.java @@ -6,53 +6,53 @@ import java.util.Objects; import java.util.stream.Collectors; import com.plannaplan.entities.Groups; -import com.plannaplan.responses.models.DefaultGroupResponse; -import com.plannaplan.responses.models.GetCourseGroupsResponse; -import com.plannaplan.responses.models.WithCapacityGroupResponse; +import com.plannaplan.responses.models.GroupDefaultResponse; +import com.plannaplan.responses.models.CourseWithGroupsResponse; +import com.plannaplan.responses.models.GroupWithCapacityResponse; import com.plannaplan.types.GroupType; public class GroupsMappers { - public static List mapToDefaultResponse(List groups) { - return groups.stream().filter(Objects::nonNull).map(DefaultGroupResponse::new).collect(Collectors.toList()); + public static List mapToDefaultResponse(List groups) { + return groups.stream().filter(Objects::nonNull).map(GroupDefaultResponse::new).collect(Collectors.toList()); } - public static List mapToCapacityResponse(List groups) { - return groups.stream().filter(Objects::nonNull).map(WithCapacityGroupResponse::new) + public static List mapToCapacityResponse(List groups) { + return groups.stream().filter(Objects::nonNull).map(GroupWithCapacityResponse::new) .collect(Collectors.toList()); } - public static GetCourseGroupsResponse mapToGetCourseGroupsDefaultResponse (List groups){ + public static CourseWithGroupsResponse mapToGetCourseGroupsDefaultResponse (List groups){ - List lectures = new ArrayList<>(); - List classes = new ArrayList<>(); + List lectures = new ArrayList<>(); + List classes = new ArrayList<>(); groups.stream().forEach(group -> { if (group.getType() == GroupType.CLASS) { - classes.add(new DefaultGroupResponse(group)); + classes.add(new GroupDefaultResponse(group)); } else { - lectures.add(new DefaultGroupResponse(group)); + lectures.add(new GroupDefaultResponse(group)); } }); - return new GetCourseGroupsResponse<>(classes, lectures); + return new CourseWithGroupsResponse<>(classes, lectures); } - public static GetCourseGroupsResponse mapToGetCourseGroupsWithCapacityResponse (List groups){ + public static CourseWithGroupsResponse mapToGetCourseGroupsWithCapacityResponse (List groups){ - List lectures = new ArrayList<>(); - List classes = new ArrayList<>(); + List lectures = new ArrayList<>(); + List classes = new ArrayList<>(); groups.stream().forEach(group -> { if (group.getType() == GroupType.CLASS) { - classes.add(new WithCapacityGroupResponse(group)); + classes.add(new GroupWithCapacityResponse(group)); } else { - lectures.add(new WithCapacityGroupResponse(group)); + lectures.add(new GroupWithCapacityResponse(group)); } }); - return new GetCourseGroupsResponse<>(classes, lectures); + return new CourseWithGroupsResponse<>(classes, lectures); } } diff --git a/restservice/src/main/java/com/plannaplan/responses/mappers/UserResponseMappers.java b/restservice/src/main/java/com/plannaplan/responses/mappers/UserResponseMappers.java index f039341..096b20e 100755 --- a/restservice/src/main/java/com/plannaplan/responses/mappers/UserResponseMappers.java +++ b/restservice/src/main/java/com/plannaplan/responses/mappers/UserResponseMappers.java @@ -5,11 +5,11 @@ import java.util.Objects; import java.util.stream.Collectors; import com.plannaplan.entities.User; -import com.plannaplan.responses.models.SearchForStudentsResponse; +import com.plannaplan.responses.models.UserResponse; public class UserResponseMappers { - public static List mapToDefaultResponse(List groups) { - return groups.stream().filter(Objects::nonNull).map(SearchForStudentsResponse::new) + public static List mapToDefaultResponse(List groups) { + return groups.stream().filter(Objects::nonNull).map(UserResponse::new) .collect(Collectors.toList()); } } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/AssignmentResponse.java similarity index 53% rename from restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/AssignmentResponse.java index 416e61f..e78b55d 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/AssignmentResponse.java @@ -6,30 +6,30 @@ import com.plannaplan.types.GroupType; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about given assigment to course.", value = "GetCurrentAssignmentsResponse") -public class GetCurrentAssignmentsResponse { +@ApiModel(description = "Response shows information about given assigment to course.", value = "AssignmentResponse") +public class AssignmentResponse { private Long id; private String name; - private WithCapacityGroupResponse classes; - private WithCapacityGroupResponse lecture; + private GroupWithCapacityResponse classes; + private GroupWithCapacityResponse lecture; - public GetCurrentAssignmentsResponse(Course course, Groups lecture, Groups classes) { + public AssignmentResponse(Course course, Groups lecture, Groups classes) { this.id = course.getId(); this.name = course.getName(); - this.lecture = lecture == null ? null : new WithCapacityGroupResponse(lecture); - this.classes = classes == null ? null : new WithCapacityGroupResponse(classes); + this.lecture = lecture == null ? null : new GroupWithCapacityResponse(lecture); + this.classes = classes == null ? null : new GroupWithCapacityResponse(classes); } - public GetCurrentAssignmentsResponse(Course course, Groups group) { + public AssignmentResponse(Course course, Groups group) { this(course, group.getType() == GroupType.LECTURE ? group : null, group.getType() == GroupType.CLASS ? group : null); } - public WithCapacityGroupResponse getLecture() { + public GroupWithCapacityResponse getLecture() { return this.lecture; } - public WithCapacityGroupResponse getClasses() { + public GroupWithCapacityResponse getClasses() { return this.classes; } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java index 29e04b4..63df94d 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/CommisionResponse.java @@ -7,7 +7,7 @@ import com.plannaplan.entities.Commision; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -@ApiModel(description = "Response shows information about commision", value = "CommisionResponse") +@ApiModel(description = "Response shows information about commision.", value = "CommisionResponse") public class CommisionResponse { @ApiModelProperty(value = "ID created by database") private Long id; diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/CourseWithGroupsResponse.java similarity index 72% rename from restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/CourseWithGroupsResponse.java index f2bcc45..6b8107f 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCourseGroupsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/CourseWithGroupsResponse.java @@ -5,13 +5,13 @@ import java.util.List; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about groups to given course.", value = "DefaultGroupResponse") -public class GetCourseGroupsResponse { +@ApiModel(description = "Response shows information about groups to given course.", value = "CourseWithGroupsResponse") +public class CourseWithGroupsResponse { private List lectures = new ArrayList<>(); private List classes = new ArrayList<>(); - public GetCourseGroupsResponse(List classes, List lectures ){ + public CourseWithGroupsResponse(List classes, List lectures ){ this.lectures = lectures; this.classes = classes; } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/CoursesDefaultResponse.java similarity index 65% rename from restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/CoursesDefaultResponse.java index c76157f..12f5671 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/CoursesDefaultResponse.java @@ -5,10 +5,10 @@ import com.plannaplan.responses.models.abstracts.CoursesResponse; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about course.", value = "DefaultGroupResponse") -public class GetCoursesResponse extends CoursesResponse { +@ApiModel(description = "Response shows information about course.", value = "CoursesDefaultResponse") +public class CoursesDefaultResponse extends CoursesResponse { - public GetCoursesResponse(Course course) { + public CoursesDefaultResponse(Course course) { super(course); } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/CoursesWithGroupsResponse.java similarity index 53% rename from restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/CoursesWithGroupsResponse.java index 0dd2d49..188565a 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/CoursesWithGroupsResponse.java @@ -9,28 +9,28 @@ import com.plannaplan.types.GroupType; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about groups to given course.", value = "GetCoursesWithGroupsResponse") -public class GetCoursesWithGroupsResponse extends CoursesResponse { +@ApiModel(description = "Response shows information about groups to given course.", value = "CoursesWithGroupsResponse") +public class CoursesWithGroupsResponse extends CoursesResponse { - private List lectures = new ArrayList<>(); - private List classes = new ArrayList<>(); + private List lectures = new ArrayList<>(); + private List classes = new ArrayList<>(); - public GetCoursesWithGroupsResponse(Course course) { + public CoursesWithGroupsResponse(Course course) { super(course); course.getGroups().stream().forEach(group -> { if (group.getType() == GroupType.CLASS) { - this.classes.add(new DefaultGroupResponse(group)); + this.classes.add(new GroupDefaultResponse(group)); } else { - this.lectures.add(new DefaultGroupResponse(group)); + this.lectures.add(new GroupDefaultResponse(group)); } }); } - public List getClasses() { + public List getClasses() { return this.classes; } - public List getLectures() { + public List getLectures() { return this.lectures; } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GroupDefaultResponse.java similarity index 90% rename from restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/GroupDefaultResponse.java index 72659cc..165be0f 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/DefaultGroupResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GroupDefaultResponse.java @@ -7,8 +7,8 @@ import com.plannaplan.types.GroupType; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -@ApiModel(description = "Response shows information about given group", value = "DefaultGroupResponse") -public class DefaultGroupResponse { +@ApiModel(description = "Response shows information about given group.", value = "GroupDefaultResponse") +public class GroupDefaultResponse { @ApiModelProperty(value = "ID created by database.") private Long id; @@ -28,7 +28,7 @@ public class DefaultGroupResponse { @ApiModelProperty(value = "Value shows kind of group. The types are LECTURE or CLASS.") private GroupType type; - public DefaultGroupResponse(Groups group) { + public GroupDefaultResponse(Groups group) { this.id = group.getId() != null ? group.getId() : null; this.day = group.getDay() != null ? group.getDay().label : -1; this.time = group.getTimeString() != null ? group.getTimeString() : ""; @@ -37,7 +37,7 @@ public class DefaultGroupResponse { this.type = group.getType() != null ? group.getType() : null; } - public DefaultGroupResponse(Assignment assignment) { + public GroupDefaultResponse(Assignment assignment) { this(assignment.getGroup()); } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/GroupWithCapacityResponse.java similarity index 64% rename from restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/GroupWithCapacityResponse.java index ad422e6..8e7a1f8 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/WithCapacityGroupResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/GroupWithCapacityResponse.java @@ -4,17 +4,17 @@ import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Groups; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about group with included capacity.", value = "WithCapacityGroupResponse") -public class WithCapacityGroupResponse extends DefaultGroupResponse { +@ApiModel(description = "Response shows information about group with included capacity.", value = "GroupWithCapacityResponse") +public class GroupWithCapacityResponse extends GroupDefaultResponse { private int capacity; - public WithCapacityGroupResponse(Groups group) { + public GroupWithCapacityResponse(Groups group) { super(group); this.capacity = group.getCapacity(); } - public WithCapacityGroupResponse(Assignment assignment) { + public GroupWithCapacityResponse(Assignment assignment) { this(assignment.getGroup()); } diff --git a/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java b/restservice/src/main/java/com/plannaplan/responses/models/UserResponse.java similarity index 83% rename from restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java rename to restservice/src/main/java/com/plannaplan/responses/models/UserResponse.java index 5e4b2b6..166718c 100755 --- a/restservice/src/main/java/com/plannaplan/responses/models/SearchForStudentsResponse.java +++ b/restservice/src/main/java/com/plannaplan/responses/models/UserResponse.java @@ -4,15 +4,15 @@ import com.plannaplan.entities.User; import io.swagger.annotations.ApiModel; -@ApiModel(description = "Response shows information about user.", value = "SearchForStudentsResponse") -public class SearchForStudentsResponse { +@ApiModel(description = "Response shows information about user.", value = "UserResponse") +public class UserResponse { private Long id; private String name; private String surname; private String email; - public SearchForStudentsResponse(User user) { + public UserResponse(User user) { this.id = user.getId(); this.name = user.getName(); this.surname = user.getSurname(); From 7c7045c0e1791036c026250ea083d6ea1631d038 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Mon, 9 Nov 2020 16:47:12 +0100 Subject: [PATCH 3/4] Part3 has been ended. Renamed the test files. The test had status successed. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Woźniak --- README.md | 4 +++ .../AssignmentResponseMappersTest.java | 6 ++-- .../mappers/CoursesResponseMappersTest.java | 12 ++++---- .../responses/mappers/GroupsMappersTest.java | 16 +++++------ .../mappers/UserResponseMappersTest.java | 6 ++-- ...eTest.java => AssignmentResponseTest.java} | 16 +++++------ .../models/CourseWithGroupsResponseTest.java | 28 +++++++++++++++++++ ...t.java => CoursesDefaultResponseTest.java} | 6 ++-- ...ava => CoursesWithGroupsResponseTest.java} | 4 +-- .../models/GetCourseGroupsResponseTest.java | 28 ------------------- ...est.java => GroupDefaultResponseTest.java} | 8 +++--- ...ava => GroupWithCapacityResponseTest.java} | 8 +++--- ...esponseTest.java => UserResponseTest.java} | 4 +-- 13 files changed, 75 insertions(+), 71 deletions(-) rename restservice/src/test/java/com/plannaplan/responses/models/{GetCurrentAssignmentsResponseTest.java => AssignmentResponseTest.java} (68%) create mode 100755 restservice/src/test/java/com/plannaplan/responses/models/CourseWithGroupsResponseTest.java rename restservice/src/test/java/com/plannaplan/responses/models/{GetCoursesResponseTest.java => CoursesDefaultResponseTest.java} (73%) rename restservice/src/test/java/com/plannaplan/responses/models/{GetCoursesWithGroupsResponseTest.java => CoursesWithGroupsResponseTest.java} (78%) delete mode 100755 restservice/src/test/java/com/plannaplan/responses/models/GetCourseGroupsResponseTest.java rename restservice/src/test/java/com/plannaplan/responses/models/{DefaultGroupResponseTest.java => GroupDefaultResponseTest.java} (88%) rename restservice/src/test/java/com/plannaplan/responses/models/{WithCapacityGroupResponseTest.java => GroupWithCapacityResponseTest.java} (85%) rename restservice/src/test/java/com/plannaplan/responses/models/{SearchForStudentsResponseTest.java => UserResponseTest.java} (84%) diff --git a/README.md b/README.md index 7001517..4f122c4 100755 --- a/README.md +++ b/README.md @@ -40,6 +40,10 @@ Na koniec w przęglądarce dostaniesz w odpowiedzi token. W samym pliku można z Żeby zobaczyć dokumentację api trzeba wejść w przeglądarce na `http://localhost:1285/swagger-ui.html` po odpaleniu aplikacji. +### Nazewnictwo odpowiedzi + +Każdą odp zaczynamy od modelu, który opisuje np. `Courses` a kończymy na `Response`. Między tymi dwoma członami możemy dodawać modyfikatory opisujące dokładniej odpowiedź np. `Default`. W ten sposób możemy otrzymać nazwę `CoursesDefaultResponse.java` + ## Packaging Zeby spakowac apke do `jara` wystarcza dwie komendy zaczynajac z glownego katalogu projektu diff --git a/restservice/src/test/java/com/plannaplan/responses/mappers/AssignmentResponseMappersTest.java b/restservice/src/test/java/com/plannaplan/responses/mappers/AssignmentResponseMappersTest.java index 431211c..a77dee3 100755 --- a/restservice/src/test/java/com/plannaplan/responses/mappers/AssignmentResponseMappersTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/mappers/AssignmentResponseMappersTest.java @@ -9,7 +9,7 @@ import com.plannaplan.entities.Assignment; import com.plannaplan.entities.Commision; import com.plannaplan.entities.Course; import com.plannaplan.entities.Groups; -import com.plannaplan.responses.models.GetCurrentAssignmentsResponse; +import com.plannaplan.responses.models.AssignmentResponse; import com.plannaplan.entities.Lecturer; import com.plannaplan.types.WeekDay; @@ -25,9 +25,9 @@ public class AssignmentResponseMappersTest { new Lecturer("krul.", "Wladyslaw", "Potocki")), com), new Assignment(new Groups(32, "A4-1", course, 420, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")), com)); - final List response = AssignmentResponseMappers.mapToResponse(groups); + final List response = AssignmentResponseMappers.mapToResponse(groups); assertTrue(response.size() == 1); - assertTrue(response.get(0) instanceof GetCurrentAssignmentsResponse); + assertTrue(response.get(0) instanceof AssignmentResponse); } } diff --git a/restservice/src/test/java/com/plannaplan/responses/mappers/CoursesResponseMappersTest.java b/restservice/src/test/java/com/plannaplan/responses/mappers/CoursesResponseMappersTest.java index 60bb9e0..fc71c8f 100755 --- a/restservice/src/test/java/com/plannaplan/responses/mappers/CoursesResponseMappersTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/mappers/CoursesResponseMappersTest.java @@ -6,8 +6,8 @@ import java.util.Arrays; import java.util.List; import com.plannaplan.entities.Course; -import com.plannaplan.responses.models.GetCoursesResponse; -import com.plannaplan.responses.models.GetCoursesWithGroupsResponse; +import com.plannaplan.responses.models.CoursesDefaultResponse; +import com.plannaplan.responses.models.CoursesWithGroupsResponse; import org.junit.Test; @@ -15,21 +15,21 @@ public class CoursesResponseMappersTest { @Test public void shouldMapListCoursesToResponseList() { final List courses = Arrays.asList(new Course(), new Course()); - final List response = CoursesResponseMappers.mapToGetCoursesResponse(courses); + final List response = CoursesResponseMappers.mapToGetCoursesResponse(courses); assertTrue(response.size() == 2); - assertTrue(response.get(0) instanceof GetCoursesResponse); + assertTrue(response.get(0) instanceof CoursesDefaultResponse); } @Test public void shouldMapListCoursesToResponseWithGroupsList() { final List courses = Arrays.asList(new Course(), new Course()); - final List response = CoursesResponseMappers + final List response = CoursesResponseMappers .mapToGetCoursesWithGroupsResponse(courses); assertTrue(response.size() == 2); - assertTrue(response.get(0) instanceof GetCoursesWithGroupsResponse); + assertTrue(response.get(0) instanceof CoursesWithGroupsResponse); } } diff --git a/restservice/src/test/java/com/plannaplan/responses/mappers/GroupsMappersTest.java b/restservice/src/test/java/com/plannaplan/responses/mappers/GroupsMappersTest.java index cefc561..e41fe0a 100755 --- a/restservice/src/test/java/com/plannaplan/responses/mappers/GroupsMappersTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/mappers/GroupsMappersTest.java @@ -7,9 +7,9 @@ import java.util.List; import com.plannaplan.entities.Groups; import com.plannaplan.entities.Lecturer; -import com.plannaplan.responses.models.DefaultGroupResponse; -import com.plannaplan.responses.models.GetCourseGroupsResponse; -import com.plannaplan.responses.models.WithCapacityGroupResponse; +import com.plannaplan.responses.models.GroupDefaultResponse; +import com.plannaplan.responses.models.CourseWithGroupsResponse; +import com.plannaplan.responses.models.GroupWithCapacityResponse; import com.plannaplan.types.WeekDay; import org.junit.Test; @@ -19,10 +19,10 @@ public class GroupsMappersTest { public void shouldMapToResponseIncludingCapacity() { final List gropus = Arrays.asList( new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki"))); - final List response = GroupsMappers.mapToCapacityResponse(gropus); + final List response = GroupsMappers.mapToCapacityResponse(gropus); assert (response.get(0).getCapacity() == 42); - assert (response.get(0) instanceof WithCapacityGroupResponse); + assert (response.get(0) instanceof GroupWithCapacityResponse); assert (response.size() == 1); } @@ -30,9 +30,9 @@ public class GroupsMappersTest { public void shouldMapToResponseWiothoutCapacity() { final List gropus = Arrays.asList( new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki"))); - final List response = GroupsMappers.mapToDefaultResponse(gropus); + final List response = GroupsMappers.mapToDefaultResponse(gropus); - assert (response.get(0) instanceof DefaultGroupResponse); + assert (response.get(0) instanceof GroupDefaultResponse); assert (response.size() == 1); } @@ -41,7 +41,7 @@ public class GroupsMappersTest { final List groups = Arrays.asList( new Groups(150, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")), new Groups(24, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki"))); - final GetCourseGroupsResponse response = GroupsMappers.mapToGetCourseGroupsDefaultResponse(groups); + final CourseWithGroupsResponse response = GroupsMappers.mapToGetCourseGroupsDefaultResponse(groups); assertTrue(response.getClasses().size() == 1); assertTrue(response.getLectures().size() == 1); diff --git a/restservice/src/test/java/com/plannaplan/responses/mappers/UserResponseMappersTest.java b/restservice/src/test/java/com/plannaplan/responses/mappers/UserResponseMappersTest.java index f393f03..52ddb19 100755 --- a/restservice/src/test/java/com/plannaplan/responses/mappers/UserResponseMappersTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/mappers/UserResponseMappersTest.java @@ -7,7 +7,7 @@ import java.util.List; import com.plannaplan.entities.User; import com.plannaplan.types.UserRoles; -import com.plannaplan.responses.models.SearchForStudentsResponse; +import com.plannaplan.responses.models.UserResponse; import org.junit.Test; @@ -25,8 +25,8 @@ public class UserResponseMappersTest { final List users = Arrays.asList(new User(F_NAME, F_SURNAMENAME, F_EMAIL, UserRoles.TEST_USER), new User(S_NAME, S_SURNAMENAME, S_EMAIL, UserRoles.TEST_USER)); - final List resposne = UserResponseMappers.mapToDefaultResponse(users); + final List resposne = UserResponseMappers.mapToDefaultResponse(users); assertTrue(resposne.size() == 2); - assertTrue(resposne.get(0) instanceof SearchForStudentsResponse); + assertTrue(resposne.get(0) instanceof UserResponse); } } diff --git a/restservice/src/test/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/AssignmentResponseTest.java similarity index 68% rename from restservice/src/test/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/AssignmentResponseTest.java index 8a2aa17..ee386c3 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/GetCurrentAssignmentsResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/AssignmentResponseTest.java @@ -9,7 +9,7 @@ import com.plannaplan.types.WeekDay; import org.junit.Test; -public class GetCurrentAssignmentsResponseTest { +public class AssignmentResponseTest { @Test public void shouldMapGroupsToResponse() { @@ -19,10 +19,10 @@ public class GetCurrentAssignmentsResponseTest { final Groups classes = new Groups(22, "A4-2", null, 580, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")); - final GetCurrentAssignmentsResponse response = new GetCurrentAssignmentsResponse(course, lecture, classes); + final AssignmentResponse response = new AssignmentResponse(course, lecture, classes); assertTrue(response.getName() == "Kurs"); - assertTrue(response.getLecture() instanceof WithCapacityGroupResponse); - assertTrue(response.getClasses() instanceof WithCapacityGroupResponse); + assertTrue(response.getLecture() instanceof GroupWithCapacityResponse); + assertTrue(response.getClasses() instanceof GroupWithCapacityResponse); } @Test @@ -31,9 +31,9 @@ public class GetCurrentAssignmentsResponseTest { final Groups lecture = new Groups(142, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")); - final GetCurrentAssignmentsResponse response = new GetCurrentAssignmentsResponse(course, lecture); + final AssignmentResponse response = new AssignmentResponse(course, lecture); assertTrue(response.getName() == "Kurs"); - assertTrue(response.getLecture() instanceof WithCapacityGroupResponse); + assertTrue(response.getLecture() instanceof GroupWithCapacityResponse); assertTrue(response.getClasses() == null); } @@ -43,10 +43,10 @@ public class GetCurrentAssignmentsResponseTest { final Groups classes = new Groups(22, "A4-2", null, 580, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")); - final GetCurrentAssignmentsResponse response = new GetCurrentAssignmentsResponse(course, classes); + final AssignmentResponse response = new AssignmentResponse(course, classes); assertTrue(response.getName() == "Kurs"); assertTrue(response.getLecture() == null); - assertTrue(response.getClasses() instanceof WithCapacityGroupResponse); + assertTrue(response.getClasses() instanceof GroupWithCapacityResponse); } } diff --git a/restservice/src/test/java/com/plannaplan/responses/models/CourseWithGroupsResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/CourseWithGroupsResponseTest.java new file mode 100755 index 0000000..dda1c8b --- /dev/null +++ b/restservice/src/test/java/com/plannaplan/responses/models/CourseWithGroupsResponseTest.java @@ -0,0 +1,28 @@ +package com.plannaplan.responses.models; + +import static org.junit.Assert.assertTrue; + +import java.util.Arrays; +import java.util.List; + +import com.plannaplan.entities.Groups; + +import org.junit.Test; + +public class CourseWithGroupsResponseTest { + + @Test public void shouldCreateInstance(){ + + final List classes = Arrays.asList(new GroupDefaultResponse(new Groups())); + + final List lectures = Arrays.asList(new GroupDefaultResponse(new Groups())); + + final CourseWithGroupsResponse instance = new CourseWithGroupsResponse<>(classes,lectures); + + assertTrue(instance.getClasses().get(0) instanceof GroupDefaultResponse); + assertTrue(instance.getLectures().get(0) instanceof GroupDefaultResponse); + + } + + +} diff --git a/restservice/src/test/java/com/plannaplan/responses/models/GetCoursesResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/CoursesDefaultResponseTest.java similarity index 73% rename from restservice/src/test/java/com/plannaplan/responses/models/GetCoursesResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/CoursesDefaultResponseTest.java index 39f8b72..2dea02a 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/GetCoursesResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/CoursesDefaultResponseTest.java @@ -6,11 +6,11 @@ import com.plannaplan.entities.Course; import org.junit.Test; -public class GetCoursesResponseTest { +public class CoursesDefaultResponseTest { @Test public void shouldMapFilledCourse() { final Course course = new Course("Test", "XD"); - final GetCoursesResponse response = new GetCoursesResponse(course); + final CoursesDefaultResponse response = new CoursesDefaultResponse(course); assertTrue(response.getId() == null); assertTrue(response.getName().equals("Test")); @@ -19,7 +19,7 @@ public class GetCoursesResponseTest { @Test public void shouldMapEmptyCourse() { final Course course = new Course(); - final GetCoursesResponse response = new GetCoursesResponse(course); + final CoursesDefaultResponse response = new CoursesDefaultResponse(course); assertTrue(response.getId() == null); assertTrue(response.getName().equals("")); diff --git a/restservice/src/test/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/CoursesWithGroupsResponseTest.java similarity index 78% rename from restservice/src/test/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/CoursesWithGroupsResponseTest.java index 422ca10..846c6e4 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/GetCoursesWithGroupsResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/CoursesWithGroupsResponseTest.java @@ -6,11 +6,11 @@ import com.plannaplan.entities.Course; import org.junit.Test; -public class GetCoursesWithGroupsResponseTest { +public class CoursesWithGroupsResponseTest { @Test public void shouldMapCourseToResponseWithGroupsIncluded() { - final GetCoursesWithGroupsResponse response = new GetCoursesWithGroupsResponse( + final CoursesWithGroupsResponse response = new CoursesWithGroupsResponse( new Course("Programowanie funkcyjne", "xd")); assertTrue(response.getName() == "Programowanie funkcyjne"); diff --git a/restservice/src/test/java/com/plannaplan/responses/models/GetCourseGroupsResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/GetCourseGroupsResponseTest.java deleted file mode 100755 index 4da18db..0000000 --- a/restservice/src/test/java/com/plannaplan/responses/models/GetCourseGroupsResponseTest.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.plannaplan.responses.models; - -import static org.junit.Assert.assertTrue; - -import java.util.Arrays; -import java.util.List; - -import com.plannaplan.entities.Groups; - -import org.junit.Test; - -public class GetCourseGroupsResponseTest { - - @Test public void shouldCreateInstance(){ - - final List classes = Arrays.asList(new DefaultGroupResponse(new Groups())); - - final List lectures = Arrays.asList(new DefaultGroupResponse(new Groups())); - - final GetCourseGroupsResponse instance = new GetCourseGroupsResponse<>(classes,lectures); - - assertTrue(instance.getClasses().get(0) instanceof DefaultGroupResponse); - assertTrue(instance.getLectures().get(0) instanceof DefaultGroupResponse); - - } - - -} diff --git a/restservice/src/test/java/com/plannaplan/responses/models/DefaultGroupResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/GroupDefaultResponseTest.java similarity index 88% rename from restservice/src/test/java/com/plannaplan/responses/models/DefaultGroupResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/GroupDefaultResponseTest.java index e915566..747f527 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/DefaultGroupResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/GroupDefaultResponseTest.java @@ -10,13 +10,13 @@ import com.plannaplan.types.WeekDay; import org.junit.Test; -public class DefaultGroupResponseTest { +public class GroupDefaultResponseTest { @Test public void shouldMapAssignmentClassToResponse() { final Assignment assignment = new Assignment( new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")), null); - final DefaultGroupResponse response = new DefaultGroupResponse(assignment); + final GroupDefaultResponse response = new GroupDefaultResponse(assignment); assertTrue(response.getDay() == 0); assertTrue(response.getLecturer().equals("krul. Wladyslaw Potocki")); assertTrue(response.getRoom().equals("A4-1")); @@ -29,7 +29,7 @@ public class DefaultGroupResponseTest { final Groups group = new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")); - final DefaultGroupResponse response = new DefaultGroupResponse(group); + final GroupDefaultResponse response = new GroupDefaultResponse(group); assertTrue(response.getDay() == 0); assertTrue(response.getLecturer().equals("krul. Wladyslaw Potocki")); assertTrue(response.getRoom().equals("A4-1")); @@ -41,7 +41,7 @@ public class DefaultGroupResponseTest { public void shouldMapEmptyGroupClassToResponse() { final Groups group = new Groups(); - final DefaultGroupResponse response = new DefaultGroupResponse(group); + final GroupDefaultResponse response = new GroupDefaultResponse(group); assertTrue(response.getDay() == -1); assertTrue(response.getLecturer().equals("")); assertTrue(response.getRoom().equals("")); diff --git a/restservice/src/test/java/com/plannaplan/responses/models/WithCapacityGroupResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/GroupWithCapacityResponseTest.java similarity index 85% rename from restservice/src/test/java/com/plannaplan/responses/models/WithCapacityGroupResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/GroupWithCapacityResponseTest.java index 1495cef..4cad6cf 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/WithCapacityGroupResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/GroupWithCapacityResponseTest.java @@ -10,13 +10,13 @@ import com.plannaplan.types.WeekDay; import org.junit.Test; -public class WithCapacityGroupResponseTest { +public class GroupWithCapacityResponseTest { @Test public void shouldMapAssignmentClassToResponse() { final Assignment assignment = new Assignment( new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")), null); - final WithCapacityGroupResponse response = new WithCapacityGroupResponse(assignment); + final GroupWithCapacityResponse response = new GroupWithCapacityResponse(assignment); assertTrue(response.getCapacity() == 42); assertTrue(response.getDay() == 0); assertTrue(response.getLecturer().equals("krul. Wladyslaw Potocki")); @@ -30,7 +30,7 @@ public class WithCapacityGroupResponseTest { final Groups group = new Groups(42, "A4-1", null, 520, WeekDay.MONDAY, new Lecturer("krul.", "Wladyslaw", "Potocki")); - final WithCapacityGroupResponse response = new WithCapacityGroupResponse(group); + final GroupWithCapacityResponse response = new GroupWithCapacityResponse(group); assertTrue(response.getCapacity() == 42); assertTrue(response.getDay() == 0); assertTrue(response.getLecturer().equals("krul. Wladyslaw Potocki")); @@ -43,7 +43,7 @@ public class WithCapacityGroupResponseTest { public void shouldMapEmptyGroupClassToResponse() { final Groups group = new Groups(); - final WithCapacityGroupResponse response = new WithCapacityGroupResponse(group); + final GroupWithCapacityResponse response = new GroupWithCapacityResponse(group); assertTrue(response.getCapacity() == 0); assertTrue(response.getDay() == -1); assertTrue(response.getLecturer().equals("")); diff --git a/restservice/src/test/java/com/plannaplan/responses/models/SearchForStudentsResponseTest.java b/restservice/src/test/java/com/plannaplan/responses/models/UserResponseTest.java similarity index 84% rename from restservice/src/test/java/com/plannaplan/responses/models/SearchForStudentsResponseTest.java rename to restservice/src/test/java/com/plannaplan/responses/models/UserResponseTest.java index d28f51d..c376636 100755 --- a/restservice/src/test/java/com/plannaplan/responses/models/SearchForStudentsResponseTest.java +++ b/restservice/src/test/java/com/plannaplan/responses/models/UserResponseTest.java @@ -7,14 +7,14 @@ import com.plannaplan.types.UserRoles; import org.junit.Test; -public class SearchForStudentsResponseTest { +public class UserResponseTest { private static final String NAME = "Tytus"; private static final String SURNAMENAME = "Romek"; private static final String EMAIL = "i@Atomek.pl"; @Test public void shouldMapUserToResponseElement() { - final SearchForStudentsResponse response = new SearchForStudentsResponse( + final UserResponse response = new UserResponse( new User(NAME, SURNAMENAME, EMAIL, UserRoles.TEST_USER)); assertTrue(response.getName().equals(NAME)); assertTrue(response.getSurname().equals(SURNAMENAME)); From 029300815ecdaebc467d130d9d0fb330c2799eaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Mon, 9 Nov 2020 17:08:51 +0100 Subject: [PATCH 4/4] Added auth to swagger-ui MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Woźniak --- .../main/java/com/plannaplan/Swagger2Config.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/restservice/src/main/java/com/plannaplan/Swagger2Config.java b/restservice/src/main/java/com/plannaplan/Swagger2Config.java index b1bd6d6..755928d 100755 --- a/restservice/src/main/java/com/plannaplan/Swagger2Config.java +++ b/restservice/src/main/java/com/plannaplan/Swagger2Config.java @@ -1,12 +1,18 @@ package com.plannaplan; +import java.util.Collections; + import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; + +import springfox.documentation.service.Parameter; import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.ParameterBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.schema.ModelRef; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; @@ -18,9 +24,15 @@ public class Swagger2Config extends WebMvcConfigurationSupport { @Bean public Docket createRestApi() { + Parameter authHeader = new ParameterBuilder() + .parameterType("header") + .name("Authorization") + .modelRef(new ModelRef("string")) + .build(); return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select() .apis(RequestHandlerSelectors.basePackage("com.plannaplan")).paths(PathSelectors.any()) - .build(); + .build() + .globalOperationParameters(Collections.singletonList(authHeader)); } @Override