You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dianshang-qianduan/tests/task-review-navigation.test...

19 lines
1.2 KiB
JavaScript

import assert from "node:assert/strict";
import { readFileSync } from "node:fs";
import { resolve } from "node:path";
const root = resolve(import.meta.dirname, "..");
const router = readFileSync(resolve(root, "src/router/index.js"), "utf8");
const sidebar = readFileSync(resolve(root, "src/layout/components/Sidebar/index.vue"), "utf8");
const scorePage = readFileSync(resolve(root, "src/views/teacherEnd/score/index.vue"), "utf8");
const reviewPage = readFileSync(resolve(root, "src/views/teacherEnd/score/TaskReviewPanel.vue"), "utf8");
assert.match(router, /path:\s*"\/task-review"[\s\S]*?title:\s*"任务评阅"/);
assert.match(sidebar, /\{ title: "任务评阅", path: "\/task-review\/index" \},\s*\{ title: "成绩中心", path: "\/score\/index" \}/);
assert.doesNotMatch(scorePage, /label="任务评阅"/);
assert.match(reviewPage, /v-for="item in teachingClasses"/);
assert.match(reviewPage, /\.task-review \{[\s\S]*?background: linear-gradient\(135deg, rgba\(6, 23, 36, 0\.84\), rgba\(4, 12, 23, 0\.78\)\)/);
assert.match(reviewPage, /\.task-review__student-preview \{[\s\S]*?min-height: 580px/);
console.log("task review navigation is a standalone teacher menu item");