diff --git a/gui/src/components/StyledMarkdownPreview/StepContainerPreToolbar/index.test.tsx b/gui/src/components/StyledMarkdownPreview/StepContainerPreToolbar/index.test.tsx
new file mode 100644
index 00000000000..c30a46465f1
--- /dev/null
+++ b/gui/src/components/StyledMarkdownPreview/StepContainerPreToolbar/index.test.tsx
@@ -0,0 +1,79 @@
+import { render } from "@testing-library/react";
+import { describe, expect, it, vi } from "vitest";
+import { StepContainerPreToolbar } from "./index";
+
+vi.mock("../../../context/IdeMessenger", () => {
+ const { createContext } = require("react");
+ return {
+ IdeMessengerContext: createContext({
+ ide: {
+ getCurrentFile: vi.fn().mockResolvedValue(undefined),
+ showToast: vi.fn(),
+ showLines: vi.fn(),
+ },
+ post: vi.fn(),
+ }),
+ };
+});
+
+vi.mock("../../../redux/hooks", () => ({
+ useAppSelector: () => ({}),
+}));
+
+vi.mock("../../../hooks/useWebviewListener", () => ({
+ useWebviewListener: () => {},
+}));
+
+vi.mock("../../../hooks/useIdeMessengerRequest", () => ({
+ useIdeMessengerRequest: () => ({
+ result: undefined,
+ refresh: vi.fn(),
+ isLoading: false,
+ }),
+}));
+
+vi.mock("../../../redux/selectors/selectToolCalls", () => ({
+ selectToolCallById: () => undefined,
+}));
+
+vi.mock("../../../redux/slices/sessionSlice", () => ({
+ selectApplyStateByStreamId: () => undefined,
+ selectApplyStateByToolCallId: () => undefined,
+}));
+
+describe("StepContainerPreToolbar", () => {
+ const baseProps = {
+ codeBlockContent: "console.log('hello')",
+ language: "javascript",
+ codeBlockIndex: 0,
+ isLastCodeblock: true,
+ codeBlockStreamId: "stream-1",
+ };
+
+ it("renders the code block", () => {
+ const { container } = render(
+ console.log('hello')
+ console.log('hello')
+