Skip to content

Commit 6f2a8d3

Browse files
authored
Add tests for getStaticProps and getServerSideProps (#37014)
* Add tests for getStaticProps and getServerSideProps * Add test for revalidate * Add additional test * Add gitkeep
1 parent f9ed795 commit 6f2a8d3

File tree

17 files changed

+400
-0
lines changed

17 files changed

+400
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
module.exports = {
2+
experimental: {
3+
viewsDir: true,
4+
runtime: 'nodejs',
5+
reactRoot: true,
6+
serverComponents: true,
7+
},
8+
}

test/e2e/views-dir/app-rendering/pages/.gitkeep

Whitespace-only changes.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
export async function getServerSideProps() {
2+
return {
3+
props: {
4+
message: 'hello from layout',
5+
},
6+
}
7+
}
8+
9+
export default function gsspLayout(props) {
10+
return (
11+
<>
12+
<h1 id="layout-message">{props.message}</h1>
13+
{props.children}
14+
</>
15+
)
16+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
export async function getServerSideProps() {
2+
return {
3+
props: {
4+
message: 'hello from page',
5+
},
6+
}
7+
}
8+
9+
export default function nestedPage(props) {
10+
return (
11+
<>
12+
<p id="page-message">{props.message}</p>
13+
</>
14+
)
15+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
export async function getServerSideProps() {
2+
await new Promise((resolve) => setTimeout(resolve, 5000))
3+
return {
4+
props: {
5+
message: 'hello from slow page',
6+
},
7+
}
8+
}
9+
10+
export default function nestedPage(props) {
11+
return (
12+
<>
13+
<p id="slow-page-message">{props.message}</p>
14+
</>
15+
)
16+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
export async function getServerSideProps() {
2+
await new Promise((resolve) => setTimeout(resolve, 5000))
3+
return {
4+
props: {
5+
message: 'hello from slow layout',
6+
},
7+
}
8+
}
9+
10+
export default function gsspLayout(props) {
11+
return (
12+
<>
13+
<h1 id="slow-layout-message">{props.message}</h1>
14+
{props.children}
15+
</>
16+
)
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
export async function getStaticProps() {
2+
return {
3+
props: {
4+
message: 'hello from page',
5+
nowDuringBuild: Date.now(),
6+
},
7+
}
8+
}
9+
10+
export default function nestedPage(props) {
11+
return (
12+
<>
13+
<p id="page-message">{props.message}</p>
14+
<p id="page-now">{props.nowDuringBuild}</p>
15+
</>
16+
)
17+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
export async function getServerSideProps() {
2+
return {
3+
props: {
4+
message: 'hello from layout',
5+
nowDuringExecution: Date.now(),
6+
},
7+
}
8+
}
9+
10+
export default function gspLayout(props) {
11+
return (
12+
<>
13+
<h1 id="layout-message">{props.message}</h1>
14+
<p id="layout-now">{props.nowDuringExecution}</p>
15+
{props.children}
16+
</>
17+
)
18+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
export async function getStaticProps() {
2+
await new Promise((resolve) => setTimeout(resolve, 5000))
3+
return {
4+
props: {
5+
message: 'hello from slow page',
6+
nowDuringBuild: Date.now(),
7+
},
8+
}
9+
}
10+
11+
export default function nestedPage(props) {
12+
return (
13+
<>
14+
<p id="slow-page-message">{props.message}</p>
15+
<p id="slow-page-now">{props.nowDuringBuild}</p>
16+
</>
17+
)
18+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
export async function getServerSideProps() {
2+
await new Promise((resolve) => setTimeout(resolve, 5000))
3+
return {
4+
props: {
5+
message: 'hello from slow layout',
6+
nowDuringExecution: Date.now(),
7+
},
8+
}
9+
}
10+
11+
export default function gspLayout(props) {
12+
return (
13+
<>
14+
<h1 id="slow-layout-message">{props.message}</h1>
15+
<p id="slow-layout-now">{props.nowDuringExecution}</p>
16+
{props.children}
17+
</>
18+
)
19+
}

0 commit comments

Comments
 (0)