Jelajahi Sumber

完成测试

blumonilr 5 tahun lalu
induk
melakukan
58abdeb916

+ 5 - 0
pom.xml

@@ -76,6 +76,11 @@
             <artifactId>gitlab4j-api</artifactId>
             <version>4.15.7</version>
         </dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+            <version>8.0.20</version>
+        </dependency>
     </dependencies>
 
     <build>

+ 8 - 6
src/main/java/com/nju/edu/gitlab/service/impl/GroupServiceImpl.java

@@ -2,6 +2,7 @@ package com.nju.edu.gitlab.service.impl;
 
 import com.nju.edu.gitlab.service.api.GroupService;
 import com.nju.edu.gitlab.service.vo.GitlabGroup;
+import com.nju.edu.gitlab.util.ApplicationProperties;
 import com.nju.edu.gitlab.web.dto.GroupMemberDTO;
 import org.gitlab4j.api.GitLabApi;
 import org.gitlab4j.api.GitLabApiException;
@@ -16,15 +17,16 @@ import org.springframework.stereotype.Component;
 public class GroupServiceImpl implements GroupService {
     private final GitLabApi gitlabApi;
 
-    @Value("${gitlab.host}")
-    private String gitlabHost;
-    @Value("${gitlab.token}")
-    private String token;
+    private final String gitlabHost;
+    private final String token;
 
     @Autowired
-    public GroupServiceImpl() {
-        this.gitlabApi = new GitLabApi(gitlabHost,token);
+    public GroupServiceImpl(ApplicationProperties properties) {
+        this.gitlabHost=properties.getHost();
+        this.token= properties.getToken();
+        this.gitlabApi = new GitLabApi(this.gitlabHost, this.token);
     }
+
     @Override
     public synchronized GitlabGroup createGroup(String groupName) throws GitLabApiException {
         Group group=gitlabApi.getGroupApi().addGroup(groupName,groupName);

+ 7 - 7
src/main/java/com/nju/edu/gitlab/service/impl/ProjectServiceImpl.java

@@ -1,6 +1,7 @@
 package com.nju.edu.gitlab.service.impl;
 
 import com.nju.edu.gitlab.service.api.ProjectService;
+import com.nju.edu.gitlab.util.ApplicationProperties;
 import com.nju.edu.gitlab.web.dto.*;
 import org.gitlab4j.api.GitLabApi;
 import org.gitlab4j.api.GitLabApiException;
@@ -20,16 +21,15 @@ import java.util.stream.Collectors;
 public class ProjectServiceImpl implements ProjectService {
     private final GitLabApi gitlabApi;
 
-    @Value("${gitlab.host}")
-    private String gitlabHost;
-    @Value("${gitlab.token}")
-    private String token;
+    private final String gitlabHost;
+    private final String token;
 
     @Autowired
-    public ProjectServiceImpl() {
-        this.gitlabApi = new GitLabApi(gitlabHost,token);
+    public ProjectServiceImpl(ApplicationProperties properties) {
+        this.gitlabHost=properties.getHost();
+        this.token= properties.getToken();
+        this.gitlabApi = new GitLabApi(this.gitlabHost, this.token);
     }
-
     @Override
     public Integer createProject(ProjectDTO projectDTO) throws GitLabApiException {
         String projectName=projectDTO.getProjectName();

+ 7 - 6
src/main/java/com/nju/edu/gitlab/service/impl/UserServiceImpl.java

@@ -2,6 +2,7 @@ package com.nju.edu.gitlab.service.impl;
 
 import com.nju.edu.gitlab.service.api.UserService;
 import com.nju.edu.gitlab.service.vo.GitlabUser;
+import com.nju.edu.gitlab.util.ApplicationProperties;
 import com.nju.edu.gitlab.util.Tools;
 import com.nju.edu.gitlab.web.dto.ChangePasswordDTO;
 import com.nju.edu.gitlab.web.dto.GitlabUserDTO;
@@ -17,14 +18,14 @@ import org.springframework.stereotype.Component;
 public class UserServiceImpl implements UserService {
     private final GitLabApi gitlabApi;
 
-    @Value("${gitlab.host}")
-    private String gitlabHost;
-    @Value("${gitlab.token}")
-    private String token;
+    private final String gitlabHost;
+    private final String token;
 
     @Autowired
-    public UserServiceImpl() {
-        this.gitlabApi = new GitLabApi(gitlabHost,token);
+    public UserServiceImpl(ApplicationProperties properties) {
+        this.gitlabHost=properties.getHost();
+        this.token= properties.getToken();
+        this.gitlabApi = new GitLabApi(this.gitlabHost, this.token);
     }
 
     @Override

+ 17 - 0
src/main/java/com/nju/edu/gitlab/util/ApplicationProperties.java

@@ -0,0 +1,17 @@
+package com.nju.edu.gitlab.util;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.validation.annotation.Validated;
+
+@Data
+@Configuration
+@ConfigurationProperties("gitlab")
+public class ApplicationProperties {
+    private String host;
+    private String username;
+    private String token;
+    private String administrator;
+    private String email;
+}

+ 15 - 2
src/main/resources/application.yml

@@ -1,8 +1,21 @@
 server:
   port: 8080
+
+spring:
+  datasource:
+    url: jdbc:mysql://localhost:3306/sim?useUnicode=true&characterEncoding=UTF-8&useSSL=false
+    username: root
+    password: 123456
+    driver-class-name: com.mysql.jdbc.Driver
+  jpa:
+    database-platform: org.hibernate.dialect.MySQL57InnoDBDialect
+    hibernate:
+      naming:
+        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
+
 gitlab:
-  host: http://106.14.170.111:8082
+  host: http://seecoder-test-gitlab-80.seecii.cn
   username: root
-  token: 4z9a5Sykdrw7z7x8fCs6
+  token: pBmdFxFyyCKwEMmN52Pc
   administrator: root
   email: noreply@mooc.com

+ 17 - 1
src/test/java/com/nju/edu/gitlab/GitlabApplicationTests.java

@@ -1,13 +1,29 @@
 package com.nju.edu.gitlab;
 
+import com.nju.edu.gitlab.service.api.UserService;
+import com.nju.edu.gitlab.web.dto.GitlabUserDTO;
+import org.gitlab4j.api.GitLabApiException;
 import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 
 @SpringBootTest
 class GitlabApplicationTests {
 
+    @Autowired
+    UserService userService;
+
     @Test
-    void contextLoads() {
+    void testUser() {
+        GitlabUserDTO gitlabUserDTO=new GitlabUserDTO();
+        gitlabUserDTO.setEmail("458727969@qq.com");
+        gitlabUserDTO.setPassword("1qaz2wsx");
+        gitlabUserDTO.setUsername("wulinyang");
+        try {
+            userService.createGitlabUser(gitlabUserDTO);
+        } catch (GitLabApiException e) {
+            e.printStackTrace();
+        }
     }
 
 }