pretty
This commit is contained in:
parent
21b86d409c
commit
9508cc4627
1 changed files with 37 additions and 14 deletions
|
|
@ -20,7 +20,12 @@ jest.mock("../JsonView", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
jest.mock("@/components/ui/combobox", () => ({
|
jest.mock("@/components/ui/combobox", () => ({
|
||||||
Combobox: ({ id, value, onChange, placeholder }: {
|
Combobox: ({
|
||||||
|
id,
|
||||||
|
value,
|
||||||
|
onChange,
|
||||||
|
placeholder,
|
||||||
|
}: {
|
||||||
id: string;
|
id: string;
|
||||||
value: string;
|
value: string;
|
||||||
onChange: (value: string) => void;
|
onChange: (value: string) => void;
|
||||||
|
|
@ -37,7 +42,10 @@ jest.mock("@/components/ui/combobox", () => ({
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jest.mock("@/components/ui/label", () => ({
|
jest.mock("@/components/ui/label", () => ({
|
||||||
Label: ({ htmlFor, children }: {
|
Label: ({
|
||||||
|
htmlFor,
|
||||||
|
children,
|
||||||
|
}: {
|
||||||
htmlFor: string;
|
htmlFor: string;
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}) => (
|
}) => (
|
||||||
|
|
@ -48,7 +56,12 @@ jest.mock("@/components/ui/label", () => ({
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jest.mock("@/components/ui/button", () => ({
|
jest.mock("@/components/ui/button", () => ({
|
||||||
Button: ({ children, onClick, disabled, ...props }: {
|
Button: ({
|
||||||
|
children,
|
||||||
|
onClick,
|
||||||
|
disabled,
|
||||||
|
...props
|
||||||
|
}: {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
onClick?: () => void;
|
onClick?: () => void;
|
||||||
disabled?: boolean;
|
disabled?: boolean;
|
||||||
|
|
@ -139,7 +152,9 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
// Click on the resource template to select it
|
// Click on the resource template to select it
|
||||||
fireEvent.click(screen.getByText("Users API"));
|
fireEvent.click(screen.getByText("Users API"));
|
||||||
|
|
||||||
expect(screen.getByText("Fetch users with optional filtering and pagination")).toBeInTheDocument();
|
expect(
|
||||||
|
screen.getByText("Fetch users with optional filtering and pagination"),
|
||||||
|
).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should handle template value changes", () => {
|
it("should handle template value changes", () => {
|
||||||
|
|
@ -180,16 +195,18 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
// Click Read Resource button
|
// Click Read Resource button
|
||||||
const readResourceButton = screen.getByText("Read Resource");
|
const readResourceButton = screen.getByText("Read Resource");
|
||||||
expect(readResourceButton).not.toBeDisabled();
|
expect(readResourceButton).not.toBeDisabled();
|
||||||
|
|
||||||
fireEvent.click(readResourceButton);
|
fireEvent.click(readResourceButton);
|
||||||
|
|
||||||
// Verify that readResource was called with the expanded URI
|
// Verify that readResource was called with the expanded URI
|
||||||
expect(mockReadResource).toHaveBeenCalledWith("test://users?name=john&limit=10&offset=0");
|
expect(mockReadResource).toHaveBeenCalledWith(
|
||||||
|
"test://users?name=john&limit=10&offset=0",
|
||||||
|
);
|
||||||
|
|
||||||
// Verify that setSelectedResource was called with the expanded resource
|
// Verify that setSelectedResource was called with the expanded resource
|
||||||
expect(mockSetSelectedResource).toHaveBeenCalledWith({
|
expect(mockSetSelectedResource).toHaveBeenCalledWith({
|
||||||
uri: "test://users?name=john&limit=10&offset=0",
|
uri: "test://users?name=john&limit=10&offset=0",
|
||||||
name: "test://users?name=john&limit=10&offset=0"
|
name: "test://users?name=john&limit=10&offset=0",
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -217,7 +234,7 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
// Read Resource button should be enabled with partial values
|
// Read Resource button should be enabled with partial values
|
||||||
const readResourceButton = screen.getByText("Read Resource");
|
const readResourceButton = screen.getByText("Read Resource");
|
||||||
expect(readResourceButton).not.toBeDisabled();
|
expect(readResourceButton).not.toBeDisabled();
|
||||||
|
|
||||||
fireEvent.click(readResourceButton);
|
fireEvent.click(readResourceButton);
|
||||||
|
|
||||||
// Should expand with only the provided values
|
// Should expand with only the provided values
|
||||||
|
|
@ -237,7 +254,9 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
fireEvent.click(screen.getByText("Read Resource"));
|
fireEvent.click(screen.getByText("Read Resource"));
|
||||||
|
|
||||||
// Should properly encode special characters
|
// Should properly encode special characters
|
||||||
expect(mockReadResource).toHaveBeenCalledWith("test://users?name=john%20doe");
|
expect(mockReadResource).toHaveBeenCalledWith(
|
||||||
|
"test://users?name=john%20doe",
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should clear template values when switching between templates", () => {
|
it("should clear template values when switching between templates", () => {
|
||||||
|
|
@ -248,7 +267,7 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
};
|
};
|
||||||
|
|
||||||
renderResourcesTab({
|
renderResourcesTab({
|
||||||
resourceTemplates: [mockResourceTemplate, anotherTemplate]
|
resourceTemplates: [mockResourceTemplate, anotherTemplate],
|
||||||
});
|
});
|
||||||
|
|
||||||
// Select first template and fill values
|
// Select first template and fill values
|
||||||
|
|
@ -267,10 +286,10 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
|
|
||||||
it("should display resource content when a resource is selected", () => {
|
it("should display resource content when a resource is selected", () => {
|
||||||
const resourceContent = '{"users": [{"id": 1, "name": "John"}]}';
|
const resourceContent = '{"users": [{"id": 1, "name": "John"}]}';
|
||||||
|
|
||||||
renderResourcesTab({
|
renderResourcesTab({
|
||||||
selectedResource: mockResource,
|
selectedResource: mockResource,
|
||||||
resourceContent: resourceContent
|
resourceContent: resourceContent,
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(screen.getByTestId("json-view")).toBeInTheDocument();
|
expect(screen.getByTestId("json-view")).toBeInTheDocument();
|
||||||
|
|
@ -280,6 +299,10 @@ describe("ResourcesTab - Template Query Parameters", () => {
|
||||||
it("should show alert when no resource or template is selected", () => {
|
it("should show alert when no resource or template is selected", () => {
|
||||||
renderResourcesTab();
|
renderResourcesTab();
|
||||||
|
|
||||||
expect(screen.getByText("Select a resource or template from the list to view its contents")).toBeInTheDocument();
|
expect(
|
||||||
|
screen.getByText(
|
||||||
|
"Select a resource or template from the list to view its contents",
|
||||||
|
),
|
||||||
|
).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue