Test run editor UI
This commit is contained in:
@@ -7,7 +7,6 @@ import {
|
|||||||
TableRow,
|
TableRow,
|
||||||
TableCell,
|
TableCell,
|
||||||
Button,
|
Button,
|
||||||
Chip,
|
|
||||||
DropdownTrigger,
|
DropdownTrigger,
|
||||||
Dropdown,
|
Dropdown,
|
||||||
DropdownMenu,
|
DropdownMenu,
|
||||||
@@ -23,7 +22,7 @@ import {
|
|||||||
Circle,
|
Circle,
|
||||||
CircleCheck,
|
CircleCheck,
|
||||||
CircleX,
|
CircleX,
|
||||||
CircleSlash2
|
CircleSlash2,
|
||||||
} from "lucide-react";
|
} from "lucide-react";
|
||||||
import { priorities, testRunCaseStatus } from "@/config/selection";
|
import { priorities, testRunCaseStatus } from "@/config/selection";
|
||||||
import { CaseType } from "@/types/case";
|
import { CaseType } from "@/types/case";
|
||||||
@@ -69,11 +68,11 @@ export default function TestCaseSelector({
|
|||||||
}, [sortDescriptor, cases]);
|
}, [sortDescriptor, cases]);
|
||||||
|
|
||||||
const notIncludedCaseClass = "text-neutral-200 dark:text-neutral-600";
|
const notIncludedCaseClass = "text-neutral-200 dark:text-neutral-600";
|
||||||
const chipBaseClass = "border-none gap-1 text-default-600";
|
const chipBaseClass = "flex items-center text-default-600";
|
||||||
|
|
||||||
const renderStatusIcon = (uid: string) => {
|
const renderStatusIcon = (uid: string) => {
|
||||||
if (uid === "untested") {
|
if (uid === "untested") {
|
||||||
return <Circle size={16} color="#d4d4d8"/>;
|
return <Circle size={16} color="#d4d4d8" />;
|
||||||
} else if (uid === "passed") {
|
} else if (uid === "passed") {
|
||||||
return <CircleCheck size={16} color="#17c964" />;
|
return <CircleCheck size={16} color="#17c964" />;
|
||||||
} else if (uid === "failed") {
|
} else if (uid === "failed") {
|
||||||
@@ -90,16 +89,18 @@ export default function TestCaseSelector({
|
|||||||
switch (columnKey) {
|
switch (columnKey) {
|
||||||
case "priority":
|
case "priority":
|
||||||
return (
|
return (
|
||||||
<Chip
|
<div
|
||||||
className={
|
className={
|
||||||
isIncluded ? chipBaseClass : chipBaseClass + notIncludedCaseClass
|
isIncluded ? chipBaseClass : chipBaseClass + notIncludedCaseClass
|
||||||
}
|
}
|
||||||
color={priorities[cellValue].color}
|
|
||||||
size="sm"
|
|
||||||
variant="dot"
|
|
||||||
>
|
>
|
||||||
{priorities[cellValue].name}
|
<Circle
|
||||||
</Chip>
|
size={8}
|
||||||
|
color={isIncluded ? priorities[cellValue].color : "#d4d4d8"}
|
||||||
|
fill={isIncluded ? priorities[cellValue].color : "#d4d4d8"}
|
||||||
|
/>
|
||||||
|
<div className="ms-3">{priorities[cellValue].name}</div>
|
||||||
|
</div>
|
||||||
);
|
);
|
||||||
case "runStatus":
|
case "runStatus":
|
||||||
return (
|
return (
|
||||||
@@ -115,7 +116,9 @@ export default function TestCaseSelector({
|
|||||||
}
|
}
|
||||||
endContent={isIncluded && <ChevronDown size={16} />}
|
endContent={isIncluded && <ChevronDown size={16} />}
|
||||||
>
|
>
|
||||||
{isIncluded && testRunCaseStatus[cellValue].name}
|
<span className="w-12">
|
||||||
|
{isIncluded && testRunCaseStatus[cellValue].name}
|
||||||
|
</span>
|
||||||
</Button>
|
</Button>
|
||||||
</DropdownTrigger>
|
</DropdownTrigger>
|
||||||
<DropdownMenu aria-label="test case actions">
|
<DropdownMenu aria-label="test case actions">
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
const priorities = [
|
const priorities = [
|
||||||
{ name: "Critical", uid: "critical", color: "danger" },
|
{ name: "Critical", uid: "critical", color: "#d00002" },
|
||||||
{ name: "High", uid: "high", color: "warning" },
|
{ name: "High", uid: "high", color: "#ee6b4e" },
|
||||||
{ name: "Medium", uid: "medium", color: "secondary" },
|
{ name: "Medium", uid: "medium", color: "#fccb69" },
|
||||||
{ name: "Low", uid: "low", color: "success" },
|
{ name: "Low", uid: "low", color: "#0b62e8" },
|
||||||
];
|
];
|
||||||
|
|
||||||
const testTypes = [
|
const testTypes = [
|
||||||
|
|||||||
Reference in New Issue
Block a user