// 根据现场问题构造的渲染回归夹具,不作为教材内容认证。 export function classroomFixture(imageUrl) { const rows = [ ["cover", "凤鸣山谷的故事", "观看封面,产生期待", ["聆听奇妙的声音", "认识小动物", "一起做音乐游戏"]], ["scene_intro", "走进凤鸣山谷", "猜一猜有哪些动物", ["凤凰住在这里", "住着很多小动物"]], ["first_listen", "听听山谷里的声音", "说一说你听到了什么", ["闭上眼睛", "安静听"]], ["interaction", "声音小侦探", "说说声音有什么不同", ["认识动物图片", "模仿它的叫声"]], ["compare_listen", "声音的强弱", "用动作表示", ["老虎吼叫(强)", "小猫喵喵(弱)"]], ["rhythm_practice", "声音的长短和节奏", "拍一拍:短-短-长", ["蛐蛐叫(短)", "老鹰叫(长)"]], ["phrase_sing", "do re mi 之歌", "跟老师唱", ["低音在腰", "中音在胸", "高音在头"]], ["performance_activity", "声音模仿秀", "选择小动物角色", ["用声音和动作模仿", "注意强弱长短变化"]], ["performance_activity", "山谷交响乐", "全班一起演奏", ["用拍手、跺脚、捻指", "合在一起真神奇"]], ["practice_check", "小小音乐家", "听辨并用动作回答", ["听一听", "用动作回答", "比一比谁最棒"]], ["summary", "今天你学到了什么?", "回顾并口头总结本课所学", ["认识了山谷里的小动物", "声音有强弱、长短、高低", "学会了do re mi"]], ["homework", "寻找生活中的声音", "复述课后任务要求", ["回家找三种声音", "可以用动作或录音", "下节课分享"]] ] return { title: "凤鸣山谷的故事", templateId: "blank", gradeName: "一年级", textbookName: "本地渲染回归夹具", unitName: "奇妙的声音世界", chapterName: "凤鸣山谷的故事", courseType: "music", style: "cartoon", pages: rows.map(([type, title, task, points], index) => ({ pageNo: index + 1, type, title, bullets: points, studentContent: { points }, imageKeywords: [], classroomAction: { studentTask: task, teacherInstruction: "根据学生表现调整活动难度" }, requiredVisual: true, visualPlan: { layout: "split_content", imagePurpose: "scene", mainVisual: title }, image: [0, 1, 2, 3, 4, 7].includes(index) ? { url: imageUrl, width: 960, height: 720 } : undefined, imageReview: [5, 6, 8, 9, 10, 11].includes(index) ? "测试夹具:本页未返回图片" : undefined })) } }