const express = require("express"); const router = express.Router(); const projectSerializer = require("../../serializers/codehw/ProjectSerializer"); const buildSerializer = require("../../serializers/codehw/BuildSerializer"); const deploySerializer = require("../../serializers/codehw/DeploySerializer"); const unitTestSerializer = require("../../serializers/codehw/UnitTestSerializer"); const functionalTestSerializer = require("../../serializers/codehw/FunctionalTestSerializer"); const mirrorSerializer = require("../../serializers/codehw/MirrorSerializer"); // 获得某个 Homework 的 Project 列表(应该只有一个) router.route("/projects").post((req, res) => res.send({ data: [{ projectId: "12313421", name: "据说只有一个列表" }] }) ); // 获得 Project 的详细信息 router.route("/project/:id").get((req, res) => res.send({ id: req.params.id, data: projectSerializer({ id: req.params.id }) }) ); // 获得一次构建的详细信息 router.route("/build/:id").get((req, res) => res.send({ id: req.params.id, data: buildSerializer({ id: req.params.id }) }) ); // 获得一次部署的详细信息 router.route("/deploy/:id").get((req, res) => res.send({ id: req.params.id, data: deploySerializer({ id: req.params.id }) }) ); // 获得一次单元测试的详细信息 router.route("/unit/:id").get((req, res) => res.send({ id: req.params.id, data: unitTestSerializer({ id: req.params.id }) }) ); // 获得一次页面功能测试的详细信息 router.route("/functional/:id").get((req, res) => res.send({ id: req.params.id, data: functionalTestSerializer({ id: req.params.id }) }) ); // 获得可用镜像的 ID router.route("/mirrors/:homeworkId/:projectId").get((req, res) => res.send({ data: [ mirrorSerializer({ id: req.params.id }), mirrorSerializer({ id: req.params.id }), mirrorSerializer({ id: req.params.id }), mirrorSerializer({ id: req.params.id }) ] }) ); // 触发一次部署 router.route("/deploy").post((req, res) => res.send({ data: { success: true } }) ); // 触发一次页面功能测试 router.route("/functional").post((req, res) => res.send({ data: { success: true } }) ); // 触发一次页面功能测试 router.route("/commit").get((req, res) => res.send({ code: 200, data: [ { projectId: 93857213, commitHash: "sed reprehenderit", time: "1986-05-12T15:04:25.99Z", commitMessage: "eiusmod ipsum", brach: "consectetur", author: "aute", isBranchValid: true, isMessageValid: false }, { projectId: 88057636, commitHash: "dolor Duis", time: "1964-01-04T01:42:51.574Z", commitMessage: "Lorem esse eu amet Excepteur", brach: "nulla Excepteur officia ut non", author: "nostrud nulla quis adipisicing mollit", isBranchValid: true, isMessageValid: true }, { projectId: -10377983, commitHash: "veniam eiusmod in", time: "2014-03-19T16:56:57.97Z", commitMessage: "sed consequat exercitation eu irure", brach: "labore do Duis", author: "nostrud anim", isBranchValid: true, isMessageValid: false }, { projectId: 62019582, commitHash: "ullamco", time: "2003-11-22T14:25:34.955Z", commitMessage: "ipsum fugiat Lorem ex non", brach: "m", author: "consequat", isBranchValid: true, isMessageValid: true }, { projectId: -6849994, commitHash: "voluptate ad nulla", time: "1988-11-06T09:29:55.236Z", commitMessage: "cupidatat eiusmod nulla", brach: "amet laborum velit veniam exercitation", author: "eiusmod ex", isBranchValid: false, isMessageValid: true } ] }) ); module.exports = router;