diff --git a/frontend/src/Documents/SharedView.tsx b/frontend/src/Documents/SharedView.tsx
index 966d46f..92879d0 100644
--- a/frontend/src/Documents/SharedView.tsx
+++ b/frontend/src/Documents/SharedView.tsx
@@ -2,7 +2,6 @@ import "./Docs.scss";
import { Button, H1 } from "@blueprintjs/core";
import * as React from "react";
-import Markdown from "react-markdown";
import { connect } from "react-redux";
import { Redirect, RouteComponentProps, withRouter } from "react-router";
import { Dispatch } from "redux";
@@ -15,6 +14,9 @@ import { IAppState } from "~redux/reducers";
import { IUserJSON } from "../../../src/entity/User";
import { CodeBlock } from "./CodeBlock";
+// Jest for some reason breaks if we do it the other way
+import Markdown = require("react-markdown");
+
export interface ISharedViewComponentProps extends RouteComponentProps {
loggedIn: boolean;
user: IUserJSON | undefined;
@@ -100,4 +102,3 @@ function mapStateToProps(state: IAppState) {
export const SharedView = withRouter(
connect(mapStateToProps)(SharedViewComponent),
);
-
diff --git a/frontend/src/Documents/tests/SharedView.test.tsx b/frontend/src/Documents/tests/SharedView.test.tsx
new file mode 100644
index 0000000..d9cdb1a
--- /dev/null
+++ b/frontend/src/Documents/tests/SharedView.test.tsx
@@ -0,0 +1,101 @@
+import { mount } from "enzyme";
+import * as React from "react";
+
+import ReactMarkdown = require("react-markdown");
+import { Redirect } from "react-router";
+import { SharedViewComponent } from "~Documents/SharedView";
+import { LoadingStub } from "~LoadingStub";
+import { fetchSharedDoc } from "~redux/api/docs";
+import { IDocumentEntry } from "~redux/docs/reducer";
+import { flushPromises } from "~tests/utils";
+import { IDocumentJSON } from "../../../../src/entity/Document";
+
+const testDoc: IDocumentJSON = {
+ name: "not changed",
+ content: "not changed",
+ id: 1,
+ user: 1,
+ createdAt: 0,
+ editedAt: 0,
+ shared: false,
+};
+
+jest.mock("~redux/api/docs");
+jest.mock("react-router");
+
+describe("