diff --git a/src/main/java/io/pakland/mdas/githubstats/application/AggregateUserReviews.java b/src/main/java/io/pakland/mdas/githubstats/application/AggregateUserReviews.java index 1acd5573..11c056ea 100644 --- a/src/main/java/io/pakland/mdas/githubstats/application/AggregateUserReviews.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/AggregateUserReviews.java @@ -9,10 +9,11 @@ @Service public class AggregateUserReviews { + UserReviewAggregation userReviewAggregation = new UserReviewAggregation(); public AggregateUserReviews() {} public UserReviewAggregation execute(List userReviews) { - return UserReviewAggregation.aggregate(userReviews); + return userReviewAggregation.aggregate(userReviews); } } diff --git a/src/main/java/io/pakland/mdas/githubstats/FetchUsersFromTeam.java b/src/main/java/io/pakland/mdas/githubstats/application/FetchUsersFromTeam.java similarity index 93% rename from src/main/java/io/pakland/mdas/githubstats/FetchUsersFromTeam.java rename to src/main/java/io/pakland/mdas/githubstats/application/FetchUsersFromTeam.java index a002a751..60a68aeb 100644 --- a/src/main/java/io/pakland/mdas/githubstats/FetchUsersFromTeam.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/FetchUsersFromTeam.java @@ -1,4 +1,4 @@ -package io.pakland.mdas.githubstats; +package io.pakland.mdas.githubstats.application; import io.pakland.mdas.githubstats.application.exceptions.HttpException; import io.pakland.mdas.githubstats.domain.User; diff --git a/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromId.java b/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromId.java index 4aae7fe9..4797148d 100644 --- a/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromId.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromId.java @@ -3,7 +3,6 @@ import io.pakland.mdas.githubstats.application.exceptions.OrganizationNotFound; import io.pakland.mdas.githubstats.domain.Organization; import io.pakland.mdas.githubstats.domain.repository.OrganizationRepository; -import org.aspectj.weaver.ast.Or; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -20,13 +19,11 @@ public GetOrganizationFromId(OrganizationRepository organizationRepository) { // For tests sake, we return boolean to know if the code works properly @Transactional(readOnly = true) - public boolean execute(Integer id) throws OrganizationNotFound { + public Organization execute(Integer id) throws OrganizationNotFound { Optional org = organizationRepository.findById(id); - if (org.isPresent()) { - return true; - } - else { + if(org.isEmpty()) { throw new OrganizationNotFound(id); } + return org.get(); } } diff --git a/src/main/java/io/pakland/mdas/githubstats/application/GetUserByLogin.java b/src/main/java/io/pakland/mdas/githubstats/application/GetUserByLogin.java new file mode 100644 index 00000000..3bef7bc0 --- /dev/null +++ b/src/main/java/io/pakland/mdas/githubstats/application/GetUserByLogin.java @@ -0,0 +1,29 @@ +package io.pakland.mdas.githubstats.application; + +import io.pakland.mdas.githubstats.application.exceptions.OrganizationNotFound; +import io.pakland.mdas.githubstats.application.exceptions.UserLoginNotFound; +import io.pakland.mdas.githubstats.domain.User; +import io.pakland.mdas.githubstats.domain.repository.UserRepository; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Optional; + +@Service +public class GetUserByLogin { + + private final UserRepository userRepository; + + public GetUserByLogin(UserRepository userRepository) { + this.userRepository = userRepository; + } + + @Transactional(readOnly = true) + public User execute(String login) throws UserLoginNotFound { + Optional user = userRepository.findUserByLogin(login); + if(user.isEmpty()) { + throw new UserLoginNotFound(login); + } + return user.get(); + } +} diff --git a/src/main/java/io/pakland/mdas/githubstats/application/OrchestrateAggregators.java b/src/main/java/io/pakland/mdas/githubstats/application/OrchestrateAggregators.java new file mode 100644 index 00000000..960b0a73 --- /dev/null +++ b/src/main/java/io/pakland/mdas/githubstats/application/OrchestrateAggregators.java @@ -0,0 +1,55 @@ +package io.pakland.mdas.githubstats.application; + +import io.pakland.mdas.githubstats.domain.*; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class OrchestrateAggregators { + + // TODO: this class needs a better design + + private final AggregateCommits aggregateCommits; + private CommitAggregation commitAggregation; + + private final AggregateUserReviews aggregateUserReviews; + private UserReviewAggregation userReviewAggregation; + + // private final AggregatePullRequests aggregatePullRequests; + // private PullRequestAggregation pullRequestAggregation; + + public OrchestrateAggregators() { + this.aggregateCommits = new AggregateCommits(); + this.aggregateUserReviews = new AggregateUserReviews(); + // this.aggregatePullRequests = new AggregatePullRequests(); + } + + public void execute(User user, List pullRequests) { + pullRequests.forEach(pull -> { + List commits = pull.getCommitsByUser(user); + + CommitAggregation commitAggregation = new AggregateCommits().execute(commits); + int linesAdded = commitAggregation.getLinesAdded(); + int linesRemoved = commitAggregation.getLinesRemoved(); + // aggregate additions, deletions + + List userReviews = pull.getReviewsFromUser(user); + + long numReviewsInsideTeam = userReviews + .stream() + .filter(review -> review.isReviewFromTeam(pull.getRepository().getTeam())) + .count(); + long numReviewsOutsideTeam = userReviews.size() - numReviewsInsideTeam; + // aggregate numReviewsInsideTeam, numReviewsOutsideTeam + }); + } + + public CommitAggregation getCommitAggregation() { + return commitAggregation; + } + + public UserReviewAggregation getUserReviewAggregation() { + return userReviewAggregation; + } +} diff --git a/src/main/java/io/pakland/mdas/githubstats/application/exceptions/.gitkeep b/src/main/java/io/pakland/mdas/githubstats/application/exceptions/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/java/io/pakland/mdas/githubstats/application/exceptions/UserLoginNotFound.java b/src/main/java/io/pakland/mdas/githubstats/application/exceptions/UserLoginNotFound.java new file mode 100644 index 00000000..aee1a07e --- /dev/null +++ b/src/main/java/io/pakland/mdas/githubstats/application/exceptions/UserLoginNotFound.java @@ -0,0 +1,7 @@ +package io.pakland.mdas.githubstats.application.exceptions; + +public class UserLoginNotFound extends Exception { + public UserLoginNotFound(String login) { + super("UserLogin: " + login + " not found"); + } +} diff --git a/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamName.java b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetOrganizationFromTeamName.java similarity index 93% rename from src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamName.java rename to src/main/java/io/pakland/mdas/githubstats/application/unnused/GetOrganizationFromTeamName.java index 5a62d790..b8c9360d 100644 --- a/src/main/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamName.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetOrganizationFromTeamName.java @@ -1,4 +1,4 @@ -package io.pakland.mdas.githubstats.application; +package io.pakland.mdas.githubstats.application.unnused; import io.pakland.mdas.githubstats.application.exceptions.TeamNotFound; import io.pakland.mdas.githubstats.domain.Organization; diff --git a/src/main/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeam.java b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetRepositoriesByTeam.java similarity index 88% rename from src/main/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeam.java rename to src/main/java/io/pakland/mdas/githubstats/application/unnused/GetRepositoriesByTeam.java index 918e203f..bf5a4572 100644 --- a/src/main/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeam.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetRepositoriesByTeam.java @@ -1,4 +1,4 @@ -package io.pakland.mdas.githubstats.application; +package io.pakland.mdas.githubstats.application.unnused; import io.pakland.mdas.githubstats.domain.Repository; import io.pakland.mdas.githubstats.domain.Team; diff --git a/src/main/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganization.java b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetTeamsFromOrganization.java similarity index 90% rename from src/main/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganization.java rename to src/main/java/io/pakland/mdas/githubstats/application/unnused/GetTeamsFromOrganization.java index ba9d2a87..12b89888 100644 --- a/src/main/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganization.java +++ b/src/main/java/io/pakland/mdas/githubstats/application/unnused/GetTeamsFromOrganization.java @@ -1,4 +1,4 @@ -package io.pakland.mdas.githubstats.application; +package io.pakland.mdas.githubstats.application.unnused; import io.pakland.mdas.githubstats.domain.Organization; import io.pakland.mdas.githubstats.domain.Team; diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/.gitkeep b/src/main/java/io/pakland/mdas/githubstats/domain/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/PullRequest.java b/src/main/java/io/pakland/mdas/githubstats/domain/PullRequest.java index e862d35c..fa9dedc6 100644 --- a/src/main/java/io/pakland/mdas/githubstats/domain/PullRequest.java +++ b/src/main/java/io/pakland/mdas/githubstats/domain/PullRequest.java @@ -29,28 +29,39 @@ public class PullRequest { @JsonProperty("state") private PullRequestState state; - @Column(name = "additions") - @JsonProperty("additions") - private Integer additions; + @ManyToOne(fetch = FetchType.LAZY) + @ToString.Exclude + private Repository repository; - @Column(name = "deletions") - @JsonProperty("deletions") - private Integer deletions; + @ManyToOne(fetch = FetchType.LAZY) + private User user; - @OneToMany( - mappedBy = "pullRequest", - cascade = CascadeType.ALL, - orphanRemoval = true - ) - private List userReviews = new ArrayList<>(); + public List getCommitsByUser(User user) { + return commits + .stream() + .filter(commit -> commit.getUser().equals(user)) + .toList(); + } + + public boolean isClosed() { + return state.equals(PullRequestState.CLOSED); + } + + public boolean isCreatedByUser(User user) { + return this.user.equals(user); + } + + public List getReviewsFromUser(User user) { + return userReviews + .stream() + .filter(x -> x.getUser().equals(user)) + .toList(); + } @OneToMany( - mappedBy = "pullRequest", cascade = CascadeType.ALL, + mappedBy = "pullRequest", orphanRemoval = true ) - private List commits = new ArrayList<>(); - - @ManyToOne(fetch = FetchType.LAZY) - private Repository repository; + private List userReviews = new ArrayList<>(); } diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/User.java b/src/main/java/io/pakland/mdas/githubstats/domain/User.java index 5e1725b6..df6654b9 100644 --- a/src/main/java/io/pakland/mdas/githubstats/domain/User.java +++ b/src/main/java/io/pakland/mdas/githubstats/domain/User.java @@ -41,4 +41,11 @@ public class User { orphanRemoval = true ) private List commits = new ArrayList<>(); + + @OneToMany( + mappedBy = "user", + cascade = CascadeType.ALL, + orphanRemoval = true + ) + private List pullRequests = new ArrayList<>(); } diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/UserReview.java b/src/main/java/io/pakland/mdas/githubstats/domain/UserReview.java index 67b7c9f3..0a30c58e 100644 --- a/src/main/java/io/pakland/mdas/githubstats/domain/UserReview.java +++ b/src/main/java/io/pakland/mdas/githubstats/domain/UserReview.java @@ -49,4 +49,8 @@ public int hashCode() { return getClass().hashCode(); } + public boolean isReviewFromTeam(Team team) { + return pullRequest.getRepository().getTeam().equals(team); + } + } diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/UserReviewAggregation.java b/src/main/java/io/pakland/mdas/githubstats/domain/UserReviewAggregation.java index 7a15c5a4..8fde6b6f 100644 --- a/src/main/java/io/pakland/mdas/githubstats/domain/UserReviewAggregation.java +++ b/src/main/java/io/pakland/mdas/githubstats/domain/UserReviewAggregation.java @@ -4,16 +4,18 @@ public class UserReviewAggregation { - private int commentLengthSum; + private int commentLengthSum = 0; + private int commentCount = 0; - public static UserReviewAggregation aggregate(List userReviews) { - UserReviewAggregation userReviewAggregation = new UserReviewAggregation(); - userReviewAggregation.commentLengthSum = userReviews.stream().mapToInt(UserReview::sumCommentLength).sum(); - return userReviewAggregation; + public UserReviewAggregation aggregate(List userReviews) { + commentCount = userReviews.size(); + commentLengthSum = userReviews.stream().mapToInt(UserReview::sumCommentLength).sum(); + return this; } - public int getCommentLengthSum() { - return commentLengthSum; + public float getCommentLengthAvg() { + if(commentCount == 0) return 0; + return (float) commentLengthSum / commentCount; } } diff --git a/src/main/java/io/pakland/mdas/githubstats/domain/repository/UserRepository.java b/src/main/java/io/pakland/mdas/githubstats/domain/repository/UserRepository.java index 1e96fb79..45fc5286 100644 --- a/src/main/java/io/pakland/mdas/githubstats/domain/repository/UserRepository.java +++ b/src/main/java/io/pakland/mdas/githubstats/domain/repository/UserRepository.java @@ -4,6 +4,8 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; +import java.util.Optional; + /** * Add jdoc about the rep */ @@ -11,4 +13,5 @@ @Repository public interface UserRepository extends JpaRepository { + public Optional findUserByLogin(String login); } diff --git a/src/main/java/io/pakland/mdas/githubstats/infrastructure/.gitkeep b/src/main/java/io/pakland/mdas/githubstats/infrastructure/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromDb.java b/src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromDb.java new file mode 100644 index 00000000..17831eaa --- /dev/null +++ b/src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromDb.java @@ -0,0 +1,55 @@ +package io.pakland.mdas.githubstats.infrastructure.controller; + +import io.pakland.mdas.githubstats.application.FetchAvailableOrganizations; +import io.pakland.mdas.githubstats.application.GetUserByLogin; +import io.pakland.mdas.githubstats.application.OrchestrateAggregators; +import io.pakland.mdas.githubstats.application.exceptions.HttpException; +import io.pakland.mdas.githubstats.application.exceptions.UserLoginNotFound; +import io.pakland.mdas.githubstats.domain.*; +import io.pakland.mdas.githubstats.domain.repository.OrganizationExternalRepository; +import io.pakland.mdas.githubstats.infrastructure.github.repository.OrganizationGitHubRepository; +import io.pakland.mdas.githubstats.infrastructure.github.repository.WebClientConfiguration; +import io.pakland.mdas.githubstats.infrastructure.shell.model.UserOptionRequest; + +import java.util.List; + +public class UserControllerFromDb { + + private final UserOptionRequest userOptionRequest; + + private final GetUserByLogin getUserByLogin; + + private final OrganizationExternalRepository organizationExternalRepository; + + public UserControllerFromDb(UserOptionRequest userOptionRequest, GetUserByLogin getUserByLogin) { + this.userOptionRequest = userOptionRequest; + this.getUserByLogin = getUserByLogin; + WebClientConfiguration webClientConfiguration = new WebClientConfiguration( + "https://api.github.com", userOptionRequest.getApiKey()); + this.organizationExternalRepository = new OrganizationGitHubRepository( + webClientConfiguration); + } + + public void execute() throws UserLoginNotFound { + List orgs; + + try { + orgs = new FetchAvailableOrganizations(this.organizationExternalRepository).execute(); + } catch (HttpException e) { + throw new RuntimeException(e); + } + + User user = getUserByLogin.execute(userOptionRequest.getUserName()); + + List pullRequests = orgs.stream() + .flatMap(org -> org.getTeams().stream()) + .flatMap(team -> team.getRepositories().stream()) + .flatMap(repo -> repo.getPullRequests().stream()) + .filter(pull -> pull.isClosed() && pull.isCreatedByUser(user)) + .toList(); + + // TODO: we could have a chain of responsibility instead of a use case orchestrator + OrchestrateAggregators orchestrator = new OrchestrateAggregators(); + orchestrator.execute(user, pullRequests); + } +} \ No newline at end of file diff --git a/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/controller/UserOptionController.java b/src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromGithub.java similarity index 94% rename from src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/controller/UserOptionController.java rename to src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromGithub.java index 7330e082..c067539d 100644 --- a/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/controller/UserOptionController.java +++ b/src/main/java/io/pakland/mdas/githubstats/infrastructure/controller/UserControllerFromGithub.java @@ -1,6 +1,5 @@ -package io.pakland.mdas.githubstats.infrastructure.shell.controller; +package io.pakland.mdas.githubstats.infrastructure.controller; -import io.pakland.mdas.githubstats.FetchUsersFromTeam; import io.pakland.mdas.githubstats.application.*; import io.pakland.mdas.githubstats.application.exceptions.HttpException; import io.pakland.mdas.githubstats.domain.*; @@ -16,9 +15,9 @@ @Component @NoArgsConstructor -public class UserOptionController { +public class UserControllerFromGithub { - Logger logger = LoggerFactory.getLogger(UserOptionController.class); + Logger logger = LoggerFactory.getLogger(UserControllerFromGithub.class); private UserOptionRequest userOptionRequest; private OrganizationExternalRepository organizationExternalRepository; private TeamExternalRepository teamExternalRepository; @@ -27,7 +26,7 @@ public class UserOptionController { private PullRequestExternalRepository pullRequestExternalRepository; private CommitExternalRepository commitExternalRepository; - public UserOptionController(UserOptionRequest userOptionRequest) { + public UserControllerFromGithub(UserOptionRequest userOptionRequest) { this.userOptionRequest = userOptionRequest; WebClientConfiguration webClientConfiguration = new WebClientConfiguration( "https://api.github.com", userOptionRequest.getApiKey()); diff --git a/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/components/UserOptionComponent.java b/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/components/UserOptionComponent.java index 0110bfa3..16be47f0 100644 --- a/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/components/UserOptionComponent.java +++ b/src/main/java/io/pakland/mdas/githubstats/infrastructure/shell/components/UserOptionComponent.java @@ -1,6 +1,6 @@ package io.pakland.mdas.githubstats.infrastructure.shell.components; -import io.pakland.mdas.githubstats.infrastructure.shell.controller.UserOptionController; +import io.pakland.mdas.githubstats.infrastructure.controller.UserControllerFromGithub; import io.pakland.mdas.githubstats.infrastructure.shell.model.UserOptionRequest; import io.pakland.mdas.githubstats.infrastructure.shell.validation.DateValidator; import io.pakland.mdas.githubstats.infrastructure.shell.validation.UserNameValidator; @@ -43,8 +43,8 @@ private boolean user( throw new RuntimeException(e); } - UserOptionController userOptionController = new UserOptionController(this.userOptionRequest); - userOptionController.execute(); + UserControllerFromGithub userControllerFromGithub = new UserControllerFromGithub(this.userOptionRequest); + userControllerFromGithub.execute(); // ... Perform request ... return true; diff --git a/src/test/java/io/pakland/mdas/githubstats/application/AggregateUserReviewsTest.java b/src/test/java/io/pakland/mdas/githubstats/application/AggregateUserReviewsTest.java index ade14a0e..7efeb31a 100644 --- a/src/test/java/io/pakland/mdas/githubstats/application/AggregateUserReviewsTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/application/AggregateUserReviewsTest.java @@ -15,7 +15,7 @@ public class AggregateUserReviewsTest { @Test - public void aggregatingReviews_shouldGiveValidCommentLengthSum() { + public void aggregatingReviews_shouldGiveValidCommentLengthAvg() { int sum = 0; List reviews = new ArrayList<>(); Random random = new Random(); @@ -34,8 +34,10 @@ public void aggregatingReviews_shouldGiveValidCommentLengthSum() { userReview.setComments(comments); reviews.add(userReview); } + float avg = sum / 10f; - int commentLengthSum = UserReviewAggregation.aggregate(reviews).getCommentLengthSum(); - assertEquals(sum, commentLengthSum); + UserReviewAggregation userReviewAggregation = new UserReviewAggregation(); + float commentLengthAvg = userReviewAggregation.aggregate(reviews).getCommentLengthAvg(); + assertEquals(avg, commentLengthAvg); } } diff --git a/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromIdTest.java b/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromIdTest.java index 91da5319..56fbc02e 100644 --- a/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromIdTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromIdTest.java @@ -8,18 +8,18 @@ import java.util.Optional; -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.*; public class GetOrganizationFromIdTest { @Test public void givenValidId_shouldReturnTrue() throws OrganizationNotFound { OrganizationRepository organizationMock = Mockito.mock(OrganizationRepository.class); - Mockito.when(organizationMock.findById(Mockito.anyInt())).thenReturn(Optional.of(new Organization())); + Organization organization = new Organization(); + Mockito.when(organizationMock.findById(Mockito.anyInt())).thenReturn(Optional.of(organization)); GetOrganizationFromId useCase = new GetOrganizationFromId(organizationMock); - assertTrue(useCase.execute(1)); + assertEquals(useCase.execute(1), organization); } @Test diff --git a/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamNameTest.java b/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamNameTest.java index fe4ecc14..398ce323 100644 --- a/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamNameTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/application/GetOrganizationFromTeamNameTest.java @@ -1,6 +1,7 @@ package io.pakland.mdas.githubstats.application; import io.pakland.mdas.githubstats.application.exceptions.TeamNotFound; +import io.pakland.mdas.githubstats.application.unnused.GetOrganizationFromTeamName; import io.pakland.mdas.githubstats.domain.Organization; import io.pakland.mdas.githubstats.domain.Team; import io.pakland.mdas.githubstats.domain.repository.TeamRepository; diff --git a/src/test/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeamTest.java b/src/test/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeamTest.java index 88b1adcd..8126ed51 100644 --- a/src/test/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeamTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/application/GetRepositoriesByTeamTest.java @@ -1,5 +1,6 @@ package io.pakland.mdas.githubstats.application; +import io.pakland.mdas.githubstats.application.unnused.GetRepositoriesByTeam; import io.pakland.mdas.githubstats.domain.Repository; import io.pakland.mdas.githubstats.domain.Team; import org.junit.jupiter.api.Test; diff --git a/src/test/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganizationTest.java b/src/test/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganizationTest.java index 7f262b9f..6279dd91 100644 --- a/src/test/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganizationTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/application/GetTeamsFromOrganizationTest.java @@ -1,5 +1,6 @@ package io.pakland.mdas.githubstats.application; +import io.pakland.mdas.githubstats.application.unnused.GetTeamsFromOrganization; import io.pakland.mdas.githubstats.domain.Organization; import io.pakland.mdas.githubstats.domain.Team; import org.junit.jupiter.api.Test; diff --git a/src/test/java/io/pakland/mdas/githubstats/infrastructure/github/repository/UserGitHubRepositoryTest.java b/src/test/java/io/pakland/mdas/githubstats/infrastructure/github/repository/UserGitHubRepositoryTest.java index d014d68f..2980ddb4 100644 --- a/src/test/java/io/pakland/mdas/githubstats/infrastructure/github/repository/UserGitHubRepositoryTest.java +++ b/src/test/java/io/pakland/mdas/githubstats/infrastructure/github/repository/UserGitHubRepositoryTest.java @@ -67,9 +67,9 @@ void givenValidTeamId_shouldReturnTeamMembers() throws HttpException { List response = userGitHubRepository.fetchUsersFromTeam(this.organizationName, this.teamName); List expected = new ArrayList<>(); - expected.add(0, new User(33031570, "manerow", null, new ArrayList<>(), new ArrayList<>())); - expected.add(1, new User(48334745, "mikededo", null, new ArrayList<>(), new ArrayList<>())); - expected.add(2, new User(54351560, "sdomingobasora", null, new ArrayList<>(), new ArrayList<>())); + expected.add(0, new User(33031570, "manerow", null, new ArrayList<>(), new ArrayList<>(), new ArrayList<>())); + expected.add(1, new User(48334745, "mikededo", null, new ArrayList<>(), new ArrayList<>(), new ArrayList<>())); + expected.add(2, new User(54351560, "sdomingobasora", null, new ArrayList<>(), new ArrayList<>(), new ArrayList<>())); assertEquals(3, response.size()); assertArrayEquals(response.toArray(), expected.toArray());