mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-12-24 11:21:23 +00:00
* Upgrade packages to enable npm i with node 18 * Fix crypto and querystring issue * Fix webpack errors during npm start * Upgrade monaco editor. Fix alias in webconfig * Remove deprecated file-loader. Upgrade webpack to latest. * Fix format * Upgrade webpack, eslint and typescript * Update p-retry and fluentui packages * Revert monaco package upgrade * Fix notebook compile errors * Fix lint errors * Update jest snapshots * Fix unit tests * Update node version to 18 * Fix compile error * Fix compile error * Fix format * Turn off warning overlay for webpack devServer * Fix format * Re-add monaco webpack plugin and upgrade monaco-editor * Update package-lock.json * Fix build issue * Move MonacoWebpackPlugin to previous place in webpack.config.js * update package-lock.json * Fix package-lock.json * Update package-lock.json * Fix export ChoiceItem not found warning for self serve. Remove warning turn off in webpack config. * Update checkout and setup actions in for ci tests * Disable Gallery callout * Fix disable gallery header * Totally disable New gallery callout * Upgrade all github actions to latest
56 lines
1.9 KiB
TypeScript
56 lines
1.9 KiB
TypeScript
import { Stack } from "@fluentui/react";
|
|
import Explorer from "Explorer/Explorer";
|
|
import { SampleBubble } from "Explorer/QueryCopilot/V2/Bubbles/Sample/SampleBubble";
|
|
import { shallow } from "enzyme";
|
|
import { useQueryCopilot } from "hooks/useQueryCopilot";
|
|
import { withHooks } from "jest-react-hooks-shallow";
|
|
import React from "react";
|
|
import { QueryCopilotSidebar } from "./QueryCopilotSidebar";
|
|
|
|
describe("Query Copilot Sidebar snapshot test", () => {
|
|
const initialState = useQueryCopilot.getState();
|
|
|
|
beforeEach(() => {
|
|
useQueryCopilot.setState(initialState, true);
|
|
});
|
|
|
|
it("should render and set copilot used flag", () => {
|
|
withHooks(() => {
|
|
useQueryCopilot.getState().setShowCopilotSidebar(true);
|
|
const wrapper = shallow(<QueryCopilotSidebar explorer={new Explorer()} />);
|
|
|
|
expect(useQueryCopilot.getState().wasCopilotUsed).toBeTruthy();
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
});
|
|
|
|
it("should render and not set copilot used flag", () => {
|
|
withHooks(() => {
|
|
const wrapper = shallow(<QueryCopilotSidebar explorer={new Explorer()} />);
|
|
|
|
expect(useQueryCopilot.getState().wasCopilotUsed).toBeFalsy();
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
});
|
|
|
|
it("should render with chat messages", () => {
|
|
const message = "some test message";
|
|
useQueryCopilot.getState().setChatMessages([{ source: 0, message: message }]);
|
|
const wrapper = shallow(<QueryCopilotSidebar explorer={new Explorer()} />);
|
|
|
|
const messageContainer = wrapper.find(Stack).findWhere((x) => x.text() === message);
|
|
|
|
expect(messageContainer).toBeDefined();
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
|
|
it("should render samples without messages", () => {
|
|
const wrapper = shallow(<QueryCopilotSidebar explorer={new Explorer()} />);
|
|
|
|
const sampleBubble = wrapper.find(SampleBubble);
|
|
|
|
expect(sampleBubble).toBeDefined();
|
|
expect(wrapper).toMatchSnapshot();
|
|
});
|
|
});
|