@@ -6,7 +6,7 @@ import FailureScreenshot from '../FailureScreenshot.vue'
66import ViewReportError from ' ./ViewReportError.vue'
77
88const props = defineProps <{
9- file : RunnerTestFile
9+ suite : RunnerTestFile | RunnerTestSuite
1010}>()
1111
1212type LeveledTask = RunnerTask & {
@@ -30,29 +30,21 @@ function collectFailed(task: RunnerTask, level: number): LeveledTask[] {
3030}
3131
3232const failed = computed (() => {
33- const file = props .file
34- const failedFlatMap = file .tasks ?.flatMap (t => collectFailed (t , 0 )) ?? []
35- const result = file .result
36- const fileError = result ?.errors ?.[0 ]
37- // we must check also if the test cannot compile
38- if (fileError ) {
39- // create a dummy one
40- const fileErrorTask: RunnerTestSuite & { level: number } = {
41- id: file ! .id ,
42- file: file ! ,
43- name: file ! .name ,
44- fullName: file ! .name ,
33+ const suite = props .suite
34+ const failedFlatMap = suite .tasks .flatMap (t => collectFailed (t , 0 ))
35+ // prepend suite level errors as same indent level as children errors
36+ if (suite .result ?.errors ?.length ) {
37+ const taskError: LeveledTask = {
38+ ... suite ,
4539 level: 0 ,
46- type: ' suite' ,
47- mode: ' run' ,
48- meta: {},
4940 tasks: [],
50- result ,
5141 }
52- failedFlatMap .unshift (fileErrorTask )
42+ failedFlatMap .unshift (taskError )
5343 }
5444 return failedFlatMap
5545})
46+
47+ const isFile = computed (() => ' filepath' in props .suite )
5648 </script >
5749
5850<template >
@@ -78,17 +70,17 @@ const failed = computed(() => {
7870 v-for =" (error , idx ) of task .result .errors "
7971 :key =" idx "
8072 :error =" error "
81- :filename =" file .name "
73+ :filename =" task . file .name "
8274 :root =" config .root "
83- :file-id =" file .id "
75+ :file-id =" task . file .id "
8476 />
8577 </template >
8678 </div >
8779 </div >
8880 </template >
8981 <template v-else >
9082 <div bg =" green-500/10" text =" green-500 sm" p =" x4 y2" m-2 rounded >
91- All tests passed in this file
83+ All tests passed in this {{ isFile ? ' file' : 'suite' }}
9284 </div >
9385 </template >
9486 </div >
0 commit comments