Skip to content

Commit

Permalink
Bring over Remix 2.9.2 logic for single fetch (#11552)
Browse files Browse the repository at this point in the history
  • Loading branch information
brophdawg11 authored May 10, 2024
1 parent 5466640 commit 96b441b
Show file tree
Hide file tree
Showing 32 changed files with 446 additions and 229 deletions.
4 changes: 0 additions & 4 deletions .changeset/prerendering.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@
export default defineConfig({
plugins: [
reactRouter({
// Single fetch is required for prerendering (which will be the default in v7)
future: {
unstable_singleFetch: true,
},
async prerender() {
let slugs = await fakeGetSlugsFromCms();
// Prerender these paths into `.html` files at build time, and `.data`
Expand Down
1 change: 0 additions & 1 deletion integration/action-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ test.describe("actions", () => {

test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/routes/urlencoded.tsx": js`
import { Form, useActionData } from "react-router-dom";
Expand Down
1 change: 0 additions & 1 deletion integration/catch-boundary-data-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ test.describe("ErrorBoundary (thrown responses)", () => {

test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/root.tsx": js`
import { json } from "@react-router/node";
Expand Down
1 change: 0 additions & 1 deletion integration/catch-boundary-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ test.describe("ErrorBoundary (thrown responses)", () => {

test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/root.tsx": js`
import { json } from "@react-router/node";
Expand Down
72 changes: 31 additions & 41 deletions integration/client-data-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import {
createFixture,
js,
} from "./helpers/create-fixture.js";
import type { AppFixture, FixtureInit } from "./helpers/create-fixture.js";
import type { AppFixture } from "./helpers/create-fixture.js";
import { PlaywrightFixture } from "./helpers/playwright-fixture.js";

function getFiles({
Expand Down Expand Up @@ -145,20 +145,10 @@ test.describe("Client Data", () => {
appFixture.close();
});

function createTestFixture(init: FixtureInit, serverMode?: ServerMode) {
return createFixture(
{
...init,
singleFetch: true,
},
serverMode
);
}

test.describe("clientLoader - critical route module", () => {
test("no client loaders or fallbacks", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand All @@ -178,7 +168,7 @@ test.describe("Client Data", () => {

test("parent.clientLoader/child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand All @@ -198,7 +188,7 @@ test.describe("Client Data", () => {

test("parent.clientLoader.hydrate/child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: true,
Expand All @@ -224,7 +214,7 @@ test.describe("Client Data", () => {

test("parent.clientLoader/child.clientLoader.hydrate", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -252,7 +242,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: true,
Expand All @@ -279,7 +269,7 @@ test.describe("Client Data", () => {
});

test("handles synchronous client loaders", async ({ page }) => {
let fixture = await createTestFixture({
let fixture = await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -318,7 +308,7 @@ test.describe("Client Data", () => {
});

test("handles deferred data through client loaders", async ({ page }) => {
let fixture = await createTestFixture({
let fixture = await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -388,7 +378,7 @@ test.describe("Client Data", () => {
test("allows hydration execution without rendering a fallback", async ({
page,
}) => {
let fixture = await createTestFixture({
let fixture = await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -417,7 +407,7 @@ test.describe("Client Data", () => {
test("HydrateFallback is not rendered if clientLoader.hydrate is not set (w/server loader)", async ({
page,
}) => {
let fixture = await createTestFixture({
let fixture = await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -471,7 +461,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -514,7 +504,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -557,7 +547,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -600,7 +590,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -665,7 +655,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -742,7 +732,7 @@ test.describe("Client Data", () => {
let _consoleError = console.error;
console.error = () => {};
appFixture = await createAppFixture(
await createTestFixture(
await createFixture(
{
files: {
...getFiles({
Expand Down Expand Up @@ -795,7 +785,7 @@ test.describe("Client Data", () => {
test.describe("clientLoader - lazy route module", () => {
test("no client loaders or fallbacks", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand All @@ -817,7 +807,7 @@ test.describe("Client Data", () => {

test("parent.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand All @@ -838,7 +828,7 @@ test.describe("Client Data", () => {

test("child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand All @@ -859,7 +849,7 @@ test.describe("Client Data", () => {

test("parent.clientLoader/child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand All @@ -882,7 +872,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -926,7 +916,7 @@ test.describe("Client Data", () => {
test.describe("clientAction - critical route module", () => {
test("child.clientAction", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture(
await createFixture(
{
files: getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -964,7 +954,7 @@ test.describe("Client Data", () => {

test("child.clientAction/parent.childLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1006,7 +996,7 @@ test.describe("Client Data", () => {

test("child.clientAction/child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1050,7 +1040,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1094,7 +1084,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down Expand Up @@ -1139,7 +1129,7 @@ test.describe("Client Data", () => {
test.describe("clientAction - lazy route module", () => {
test("child.clientAction", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1175,7 +1165,7 @@ test.describe("Client Data", () => {

test("child.clientAction/parent.childLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1219,7 +1209,7 @@ test.describe("Client Data", () => {

test("child.clientAction/child.clientLoader", async ({ page }) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: false,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1265,7 +1255,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: getFiles({
parentClientLoader: true,
parentClientLoaderHydrate: false,
Expand Down Expand Up @@ -1311,7 +1301,7 @@ test.describe("Client Data", () => {
page,
}) => {
appFixture = await createAppFixture(
await createTestFixture({
await createFixture({
files: {
...getFiles({
parentClientLoader: false,
Expand Down
1 change: 0 additions & 1 deletion integration/defer-loader-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ let appFixture: AppFixture;
test.describe("deferred loaders", () => {
test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/routes/_index.tsx": js`
import { useLoaderData, Link } from "react-router-dom";
Expand Down
2 changes: 0 additions & 2 deletions integration/defer-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ test.describe("non-aborted", () => {

test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/components/counter.tsx": js`
import { useState } from "react";
Expand Down Expand Up @@ -994,7 +993,6 @@ test.describe("aborted", () => {

test.beforeAll(async () => {
fixture = await createFixture({
singleFetch: true,
files: {
"app/entry.server.tsx": js`
import { PassThrough } from "node:stream";
Expand Down
Loading

0 comments on commit 96b441b

Please sign in to comment.