forked from vitest-dev/vitest
-
Notifications
You must be signed in to change notification settings - Fork 0
/
StatusIcon.vue
50 lines (48 loc) · 988 Bytes
/
StatusIcon.vue
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<script setup lang="ts">
import { hasFailedSnapshot } from '@vitest/ws-client'
import type { Task } from '#types'
defineProps<{ task: Task }>()
</script>
<template>
<div
v-if="task.result?.state === 'pass'"
text-green-500
flex-shrink-0
i-carbon:checkmark
/>
<div
v-else-if="hasFailedSnapshot(task)"
v-tooltip.right="'Contains failed snapshot'"
text-red-500
flex-shrink-0
i-carbon:compare
/>
<div
v-else-if="task.result?.state === 'fail'"
text-red-500
flex-shrink-0
i-carbon:close
/>
<div
v-else-if="task.mode === 'todo'"
v-tooltip.right="'Todo'"
text-gray-500
flex-shrink-0
i-carbon:document-blank
/>
<div
v-else-if="task.mode === 'skip' || task.result?.state === 'skip'"
v-tooltip.right="'Skipped'"
text-gray-500
flex-shrink-0
i-carbon:redo
rotate-90
/>
<div
v-else
text-yellow-500
flex-shrink-0
i-carbon:circle-dash
animate-spin
/>
</template>