chenxz 8 anos atrás
pai
commit
921f8e646d

+ 7 - 5
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/service/fromDev/impl/IndexServiceImpl.java

@@ -9,6 +9,8 @@ import cn.iselab.mooctest.site.models.DevCase;
 import cn.iselab.mooctest.site.models.Grade;
 import cn.iselab.mooctest.site.models.Weight;
 import cn.iselab.mooctest.site.models.fromDev.Mutators;
+import cn.iselab.mooctest.site.rpc.dev.SourceService;
+import cn.iselab.mooctest.site.rpc.dev.data.MutatorsDTO;
 import cn.iselab.mooctest.site.service.fromDev.IndexService;
 import cn.iselab.mooctest.site.web.data.fromDev.WeightVO;
 import com.aliyun.oss.OSSClient;
@@ -29,8 +31,8 @@ public class IndexServiceImpl implements IndexService{
     DevCaseDao devCaseDao;
     @Autowired
     WeightDao weightDao;
-    @Autowired
-    MutatorsDao mutatorsDao;
+    @Override
+    SourceService sourceService;
     @Autowired
     GradeDao gradeDao;
 
@@ -45,8 +47,8 @@ public class IndexServiceImpl implements IndexService{
     }
 
     @Override
-    public Mutators getMutators(long taskID, long caseID){
-        return mutatorsDao.findByTidAndCid(taskID,caseID);
+    public MutatorsDTO getMutators(long taskID, long caseID){
+        return sourceService.getMutators(taskID,caseID);
     }
 
     @Override
@@ -114,7 +116,7 @@ public class IndexServiceImpl implements IndexService{
             newWeight.setCid(weightVO.getCaseId());
             newWeight.setSc(100);//默认statement占比为100
             weightDao.save(newWeight);
-            Mutators mutators = new Mutators();
+            MutatorsDTO mutators = new MutatorsDTO();
             mutators.setCid(weightVO.getCaseId());
             mutators.setTid(weightVO.getTaskId());
             mutatorsDao.save(mutators);

+ 2 - 1
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/data/wrapper/fromDev/DevCaseVOWrapper.java

@@ -3,6 +3,7 @@ package cn.iselab.mooctest.site.web.data.wrapper.fromDev;
 import cn.iselab.mooctest.site.models.DevCase;
 import cn.iselab.mooctest.site.models.Weight;
 import cn.iselab.mooctest.site.models.fromDev.Mutators;
+import cn.iselab.mooctest.site.rpc.dev.data.MutatorsDTO;
 import cn.iselab.mooctest.site.web.data.fromDev.DevCaseVO;
 import cn.iselab.mooctest.site.web.data.fromDev.MutatorsVO;
 import org.springframework.stereotype.Service;
@@ -13,7 +14,7 @@ import org.springframework.stereotype.Service;
 @Service
 public class DevCaseVOWrapper {
 
-    public DevCaseVO wrap(DevCase aCase, Weight weight, Mutators mutators, String url) {
+    public DevCaseVO wrap(DevCase aCase, Weight weight, MutatorsDTO mutators, String url) {
         DevCaseVO caseVO = new DevCaseVO();
         if (weight != null) {
             caseVO.setMutation(weight.getMutation());

+ 22 - 16
mooctest-site-server/src/test/java/cn/iselab/mooctest/site/web/logic/fromDev/impl/IndexLogicImplTest.java

@@ -4,6 +4,8 @@ import cn.iselab.mooctest.site.Application;
 import cn.iselab.mooctest.site.models.DevCase;
 import cn.iselab.mooctest.site.models.Weight;
 import cn.iselab.mooctest.site.models.fromDev.Mutators;
+import cn.iselab.mooctest.site.rpc.dev.SourceService;
+import cn.iselab.mooctest.site.rpc.dev.data.MutatorsDTO;
 import cn.iselab.mooctest.site.service.fromDev.IndexService;
 import cn.iselab.mooctest.site.web.data.fromDev.DevCaseVO;
 import cn.iselab.mooctest.site.web.data.wrapper.fromDev.DevCaseVOWrapper;
@@ -20,9 +22,12 @@ import org.springframework.boot.test.SpringApplicationConfiguration;
 import org.springframework.test.context.web.WebAppConfiguration;
 
 import java.net.URL;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
-import static org.junit.Assert.*;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyLong;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Mockito.when;
 
@@ -42,11 +47,13 @@ public class IndexLogicImplTest {
     DevCaseVOWrapper devCaseVOWrapper;
     @Mock
     OSSClient ossClient;
+    @Mock
+    SourceService sourceService;
 
     DevCase devCase=new DevCase();
     DevCaseVO devCaseVO=new DevCaseVO();
     Weight weight=new Weight();
-    Mutators mutators=new Mutators();
+    MutatorsDTO mutators=new MutatorsDTO();
 
     @Before
     public void setUp() throws Exception {
@@ -59,19 +66,18 @@ public class IndexLogicImplTest {
         devCaseVO.setName("test");
     }
 
-//    @Test
-//    public void should_return_Case_when_CaseExists(){
-//        DevCaseVO expect=devCaseVO;
-//        String url="test";
-//        when(indexService.getCase(1L)).thenReturn(devCase);
-//        when(indexLogic.getCaseSource(devCase.getName(),"test")).thenReturn(url);
-//        when(indexService.getWeight(1L,1L)).thenReturn(weight);
-//        when(indexService.getMutators(1L,1L)).thenReturn(mutators);
-//        when(devCaseVOWrapper.wrap(devCase,weight,mutators,url)).thenReturn(devCaseVO);
-//
-//        DevCaseVO result=indexLogic.getCase(1L,1L);
-//
-//        Assert.assertEquals(expect,result);
-//    }
+    @Test
+    public void should_return_Case_when_CaseExists(){
+        DevCaseVO expect=devCaseVO;
+        String url="test";
+        when(indexService.getCase(1L)).thenReturn(devCase);
+        when(indexService.getWeight(1L,1L)).thenReturn(weight);
+        when(sourceService.getMutators(1L,1L)).thenReturn(mutators);
+        when(devCaseVOWrapper.wrap(any(DevCase.class),any(Weight.class),any(MutatorsDTO.class),anyString())).thenReturn(devCaseVO);
+
+        DevCaseVO result=indexLogic.getCase(1L,1L);
+
+        Assert.assertEquals(expect,result);
+    }
 
 }