@RequestMapping(
     value = "/source",
     method = {RequestMethod.GET})
 @ResponseBody
 public String getSourceCode(@RequestParam("relativePath") String relativePath) {
   return testCaseService.getSourceCode(projectService.getActiveProject(), relativePath);
 }
 @RequestMapping(
     value = "/execute",
     method = {RequestMethod.POST})
 @ResponseBody
 public TestResult execute(@RequestBody Test test) {
   return testExecutionService.execute(projectService.getActiveProject(), test);
 }
 @RequestMapping(
     value = "/detail",
     method = {RequestMethod.POST})
 @ResponseBody
 public TestDetail getTestDetail(@RequestBody Test test) {
   return testCaseService.getTestDetail(projectService.getActiveProject(), test);
 }
 @RequestMapping(
     value = "/count",
     method = {RequestMethod.GET})
 @ResponseBody
 public long getTestCount() {
   return testCaseService.getTestCount(projectService.getActiveProject());
 }
 @RequestMapping(
     value = "/latest",
     method = {RequestMethod.GET})
 @ResponseBody
 public List<TestGroup> getLatest() {
   return testCaseService.getLatest(projectService.getActiveProject(), 8);
 }
 @RequestMapping(
     value = "/source",
     method = {RequestMethod.PUT})
 @ResponseBody
 public void updateSourceCode(
     @RequestParam("relativePath") String relativePath, @RequestBody String newSourceCode) {
   testCaseService.updateSourceCode(
       projectService.getActiveProject(), relativePath, newSourceCode);
 }
 @RequestMapping(method = {RequestMethod.GET})
 @ResponseBody
 public List<TestGroup> list() {
   return testCaseService.getTestPackages(projectService.getActiveProject());
 }