import rule from '@next/eslint-plugin-next/lib/rules/no-title-in-document-head' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { ecmaVersion: 2018, sourceType: 'module', ecmaFeatures: { modules: true, jsx: true, }, }, }) const ruleTester = new RuleTester() ruleTester.run('no-title-in-document-head', rule, { valid: [ `import Head from "next/head"; class Test { render() { return ( My page title ); } }`, `import Document, { Html, Head } from "next/document"; class MyDocument extends Document { render() { return ( ); } } export default MyDocument; `, ], invalid: [ { code: ` import { Head } from "next/document"; class Test { render() { return ( My page title ); } }`, errors: [ { message: 'Titles should be defined at the page-level using next/head. See https://nextjs.org/docs/messages/no-title-in-document-head.', type: 'JSXElement', }, ], }, ], })