mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
f43e1a95f1
* Set default `Error` status code to 404 This is an appropriate default behavior because: 1. When the server encounters an error, the `err` property is set. 2. When the client-side application crashes, the `err` property is set. This means the "only" way to render the `/_error` page without an error is when a page is not found (special condition). Fixes #6243 Closes #5437 * Add new integration test for client side 404 * single quotes * Remove unused variable * Standard needs to go away * Whoops * Check for null status code in res and err * Only check response for valid statusCode
28 lines
840 B
JavaScript
28 lines
840 B
JavaScript
/* eslint-env jest */
|
|
|
|
import webdriver from 'next-webdriver'
|
|
|
|
export default (context) => {
|
|
describe('Client Navigation 404', () => {
|
|
describe('should show 404 upon client replacestate', () => {
|
|
it('should navigate the page', async () => {
|
|
const browser = await webdriver(context.appPort, '/asd')
|
|
const serverCode = await browser
|
|
.waitForElementByCss('#errorStatusCode')
|
|
.text()
|
|
await browser.waitForElementByCss('#errorGoHome').click()
|
|
await browser.waitForElementByCss('#hellom8').back()
|
|
const clientCode = await browser
|
|
.waitForElementByCss('#errorStatusCode')
|
|
.text()
|
|
|
|
expect({ serverCode, clientCode }).toMatchObject({
|
|
serverCode: '404',
|
|
clientCode: '404'
|
|
})
|
|
browser.close()
|
|
})
|
|
})
|
|
})
|
|
}
|