|
125 | 125 | remix = create( |
126 | 126 | :project, |
127 | 127 | school: school, |
128 | | - lesson: lesson, |
129 | 128 | parent: lesson.project, |
130 | 129 | remixed_from_id: lesson.project.id, |
131 | 130 | user_id: student.id |
|
165 | 164 |
|
166 | 165 | # Class 1: Create 2 remixes with unread feedback |
167 | 166 | lesson_one = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
168 | | - remix_one = create(:project, school:, lesson: lesson_one, parent: lesson_one.project, remixed_from_id: lesson_one.project.id, user_id: student.id) |
| 167 | + remix_one = create(:project, school:, parent: lesson_one.project, remixed_from_id: lesson_one.project.id, user_id: student.id) |
169 | 168 | create(:feedback, school_project: remix_one.school_project, user_id: teacher.id, content: 'Unread 1', read_at: nil) |
170 | 169 |
|
171 | 170 | lesson_two = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
172 | | - remix_two = create(:project, school:, lesson: lesson_two, parent: lesson_two.project, remixed_from_id: lesson_two.project.id, user_id: student.id) |
| 171 | + remix_two = create(:project, school:, parent: lesson_two.project, remixed_from_id: lesson_two.project.id, user_id: student.id) |
173 | 172 | create(:feedback, school_project: remix_two.school_project, user_id: teacher.id, content: 'Unread 2', read_at: nil) |
174 | 173 |
|
175 | 174 | # Class 2: Create 1 remix with unread feedback |
176 | 175 | lesson_three = create(:lesson, school:, school_class: school_class_2, visibility: 'students', user_id: teacher.id) |
177 | | - remix_three = create(:project, school:, lesson: lesson_three, parent: lesson_three.project, remixed_from_id: lesson_three.project.id, user_id: student.id) |
| 176 | + remix_three = create(:project, school:, parent: lesson_three.project, remixed_from_id: lesson_three.project.id, user_id: student.id) |
178 | 177 | create(:feedback, school_project: remix_three.school_project, user_id: teacher.id, content: 'Unread 3', read_at: nil) |
179 | 178 |
|
180 | 179 | get("/api/schools/#{school.id}/classes", headers:) |
|
192 | 191 | stub_user_info_api_for(teacher) |
193 | 192 |
|
194 | 193 | lesson = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
195 | | - remix = create(:project, school:, lesson:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
| 194 | + remix = create(:project, school:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
196 | 195 |
|
197 | 196 | create(:feedback, school_project: remix.school_project, user_id: teacher.id, content: 'Already read', read_at: Time.current) |
198 | 197 |
|
|
219 | 218 | stub_user_info_api_for(teacher) |
220 | 219 |
|
221 | 220 | lesson = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
222 | | - remix = create(:project, school:, lesson:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
| 221 | + remix = create(:project, school:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
223 | 222 |
|
224 | 223 | # Multiple unread feedback on the same project should count as 1 |
225 | 224 | create(:feedback, school_project: remix.school_project, user_id: teacher.id, content: 'Unread 1', read_at: nil) |
|
243 | 242 | lesson = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
244 | 243 |
|
245 | 244 | # Current student's remix with unread feedback |
246 | | - my_remix = create(:project, school:, lesson:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
| 245 | + my_remix = create(:project, school:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: student.id) |
247 | 246 | create(:feedback, school_project: my_remix.school_project, user_id: teacher.id, content: 'My unread', read_at: nil) |
248 | 247 |
|
249 | 248 | # Other student's remix with unread feedback (should not count) |
250 | | - other_remix = create(:project, school:, lesson:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: other_student.id) |
| 249 | + other_remix = create(:project, school:, parent: lesson.project, remixed_from_id: lesson.project.id, user_id: other_student.id) |
251 | 250 | create(:feedback, school_project: other_remix.school_project, user_id: teacher.id, content: 'Other unread', read_at: nil) |
252 | 251 |
|
253 | 252 | get("/api/schools/#{school.id}/classes", headers:) |
|
263 | 262 |
|
264 | 263 | # Visible lesson |
265 | 264 | visible_lesson = create(:lesson, school:, school_class:, visibility: 'students', user_id: teacher.id) |
266 | | - visible_remix = create(:project, school:, lesson: visible_lesson, parent: visible_lesson.project, remixed_from_id: visible_lesson.project.id, user_id: student.id) |
| 265 | + visible_remix = create(:project, school:, parent: visible_lesson.project, remixed_from_id: visible_lesson.project.id, user_id: student.id) |
267 | 266 | create(:feedback, school_project: visible_remix.school_project, user_id: teacher.id, content: 'Visible', read_at: nil) |
268 | 267 |
|
269 | 268 | # Hidden lesson (visibility: 'teachers') |
270 | 269 | hidden_lesson = create(:lesson, school:, school_class:, visibility: 'teachers', user_id: teacher.id) |
271 | | - hidden_remix = create(:project, school:, lesson: hidden_lesson, parent: hidden_lesson.project, remixed_from_id: hidden_lesson.project.id, user_id: student.id) |
| 270 | + hidden_remix = create(:project, school:, parent: hidden_lesson.project, remixed_from_id: hidden_lesson.project.id, user_id: student.id) |
272 | 271 | create(:feedback, school_project: hidden_remix.school_project, user_id: teacher.id, content: 'Hidden', read_at: nil) |
273 | 272 |
|
274 | 273 | get("/api/schools/#{school.id}/classes", headers:) |
|
0 commit comments