diff --git a/contributors.yml b/contributors.yml
index 205fe06b05..1f2681fc79 100644
--- a/contributors.yml
+++ b/contributors.yml
@@ -19,6 +19,7 @@
- chensokheng
- chrisngobanh
- christopherchudzicki
+- codeape2
- coryhouse
- cvbuelow
- david-crespo
diff --git a/packages/react-router-dom/__tests__/link-href-test.tsx b/packages/react-router-dom/__tests__/link-href-test.tsx
index 41cd6028ee..7081e4df82 100644
--- a/packages/react-router-dom/__tests__/link-href-test.tsx
+++ b/packages/react-router-dom/__tests__/link-href-test.tsx
@@ -1,18 +1,17 @@
import * as React from "react";
-import { createRoot } from "react-dom/client";
-import * as TestRenderer from "react-test-renderer";
import {
- MemoryRouter,
- Routes,
- Route,
- Link,
- Outlet,
BrowserRouter,
HashRouter,
- createBrowserRouter,
+ Link,
+ MemoryRouter,
+ Outlet,
+ Route,
RouterProvider,
+ Routes,
+ createBrowserRouter,
createHashRouter,
} from "react-router-dom";
+import * as TestRenderer from "react-test-renderer";
describe(" href", () => {
describe("in a static route", () => {
@@ -692,87 +691,71 @@ describe(" href", () => {
});
});
- it("inside a browser router", () => {
- let node: HTMLDivElement = document.createElement("div");
- document.body.appendChild(node);
- TestRenderer.act(() => {
- createRoot(node).render(
-
-
- Link}
- />
-
-
+ describe("when using a browser router", () => {
+ it("renders proper ", () => {
+ let renderer: TestRenderer.ReactTestRenderer;
+ TestRenderer.act(() => {
+ renderer = TestRenderer.create(
+
+
+ } />
+
+
+ );
+ });
+ expect(renderer.root.findByType("a").props.href).toEqual(
+ "/path?search=value#hash"
);
});
- expect(node.innerHTML).toMatchInlineSnapshot(
- `"Link"`
- );
-
- document.body.removeChild(node);
- node = null!;
- });
-
- it("inside a hash router", () => {
- let node: HTMLDivElement = document.createElement("div");
- document.body.appendChild(node);
- TestRenderer.act(() => {
- createRoot(node).render(
-
-
- Link}
- />
-
-
+ it("renders proper ", () => {
+ let renderer: TestRenderer.ReactTestRenderer;
+ TestRenderer.act(() => {
+ let router = createBrowserRouter([
+ {
+ path: "/",
+ element: Link,
+ },
+ ]);
+ renderer = TestRenderer.create();
+ });
+ expect(renderer.root.findByType("a").props.href).toEqual(
+ "/path?search=value#hash"
);
});
-
- expect(node.innerHTML).toMatchInlineSnapshot(
- `"Link"`
- );
-
- document.body.removeChild(node);
- node = null!;
});
- it("inside a data browser router", () => {
- let node: HTMLDivElement = document.createElement("div");
- document.body.appendChild(node);
- TestRenderer.act(() => {
- let router = createBrowserRouter([
- { path: "/", element: Link },
- ]);
- createRoot(node).render();
+ describe("when using a hash router", () => {
+ it("renders proper ", () => {
+ let renderer: TestRenderer.ReactTestRenderer;
+ TestRenderer.act(() => {
+ renderer = TestRenderer.create(
+
+
+ } />
+
+
+ );
+ });
+ expect(renderer.root.findByType("a").props.href).toEqual(
+ "#/path?search=value#hash"
+ );
});
- expect(node.innerHTML).toMatchInlineSnapshot(
- `"Link"`
- );
-
- document.body.removeChild(node);
- node = null!;
- });
-
- it("inside a data hash router", () => {
- let node: HTMLDivElement = document.createElement("div");
- document.body.appendChild(node);
- TestRenderer.act(() => {
- let router = createHashRouter([
- { path: "/", element: Link },
- ]);
- createRoot(node).render();
+ it("renders proper ", () => {
+ let renderer: TestRenderer.ReactTestRenderer;
+ TestRenderer.act(() => {
+ let router = createHashRouter([
+ {
+ path: "/",
+ element: Link,
+ },
+ ]);
+ renderer = TestRenderer.create();
+ });
+ expect(renderer.root.findByType("a").props.href).toEqual(
+ "#/path?search=value#hash"
+ );
});
-
- expect(node.innerHTML).toMatchInlineSnapshot(
- `"Link"`
- );
-
- document.body.removeChild(node);
- node = null!;
});
});