File size: 1,154 Bytes
bc20498
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'use strict'

const rule = require('../../../lib/rules/no-async-tests')
const RuleTester = require('eslint').RuleTester

const ruleTester = new RuleTester()

const errors = [{ messageId: 'unexpected' }]
// async functions are an ES2017 feature
const parserOptions = { ecmaVersion: 8 }

ruleTester.run('no-async-tests', rule, {
  valid: [
    { code: 'it(\'a test case\', () => { cy.get(\'.someClass\'); })', parserOptions },
    { code: 'it(\'a test case\', async () => { await somethingAsync(); })', parserOptions },
    { code: 'async function nonTestFn () { return await somethingAsync(); }', parserOptions },
    { code: 'const nonTestArrowFn = async () => { await somethingAsync(); }', parserOptions },
  ],
  invalid: [
    { code: 'it(\'a test case\', async () => { cy.get(\'.someClass\'); })', parserOptions, errors },
    { code: 'test(\'a test case\', async () => { cy.get(\'.someClass\'); })', parserOptions, errors },
    { code: 'it(\'a test case\', async function () { cy.get(\'.someClass\'); })', parserOptions, errors },
    { code: 'test(\'a test case\', async function () { cy.get(\'.someClass\'); })', parserOptions, errors },
  ],
})