UNPKG

eslint-plugin-jest

Version:
200 lines (195 loc) 5.51 kB
'use strict'; const { RuleTester } = require('eslint'); const rule = require('../no-identical-title'); const ruleTester = new RuleTester(); ruleTester.run('no-identical-title', rule, { valid: [ [ 'describe("describe", function() {', ' it("it", function() {});', '});', ].join('\n'), ['describe();describe();'].join('\n'), ['it();it();'].join('\n'), [ 'describe("describe1", function() {', ' it("it1", function() {});', ' it("it2", function() {});', '});', ].join('\n'), ['it("it1", function() {});', 'it("it2", function() {});'].join('\n'), ['it.only("it1", function() {});', 'it("it2", function() {});'].join('\n'), ['it.only("it1", function() {});', 'it.only("it2", function() {});'].join( '\n', ), ['describe("title", function() {});', 'it("title", function() {});'].join( '\n', ), [ 'describe("describe1", function() {', ' it("it1", function() {});', ' describe("describe2", function() {', ' it("it1", function() {});', ' });', '});', ].join('\n'), [ 'describe("describe1", function() {', ' describe("describe2", function() {', ' it("it1", function() {});', ' });', ' it("it1", function() {});', '});', ].join('\n'), [ 'describe("describe1", function() {', ' describe("describe2", function() {});', '});', ].join('\n'), [ 'describe("describe1", function() {', ' describe("describe2", function() {});', '});', 'describe("describe2", function() {});', ].join('\n'), [ 'describe("describe1", function() {});', 'describe("describe2", function() {});', ].join('\n'), ['it("it" + n, function() {});', 'it("it" + n, function() {});'].join('\n'), { code: [ 'it(`it${n}`, function() {});', 'it(`it${n}`, function() {});', ].join('\n'), env: { es6: true, }, }, { code: 'it(`${n}`, function() {});', env: { es6: true, }, }, [ 'describe("title " + foo, function() {', ' describe("describe1", function() {});', '});', 'describe("describe1", function() {});', ].join('\n'), [ 'describe("describe1", function() {', ' describe("describe2", function() {});', ' describe("title " + foo, function() {', ' describe("describe2", function() {});', ' });', '});', ].join('\n'), { code: [ 'describe("describe", () => {', ' it(`testing ${someVar} with the same title`, () => {});', ' it(`testing ${someVar} with the same title`, () => {});', '});', ].join('\n'), env: { es6: true, }, }, { code: ['it(`it1`, () => {});', 'it(`it2`, () => {});'].join('\n'), env: { es6: true, }, }, { code: [ 'describe(`describe1`, () => {});', 'describe(`describe2`, () => {});', ].join('\n'), env: { es6: true, }, }, ], invalid: [ { code: [ 'describe("describe1", function() {', ' it("it1", function() {});', ' it("it1", function() {});', '});', ].join('\n'), errors: [{ messageId: 'multipleTestTitle', column: 4, line: 3 }], }, { code: ['it("it1", function() {});', 'it("it1", function() {});'].join( '\n', ), errors: [{ messageId: 'multipleTestTitle', column: 1, line: 2 }], }, { code: [ 'it.only("it1", function() {});', 'it("it1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleTestTitle', column: 1, line: 2 }], }, { code: ['fit("it1", function() {});', 'it("it1", function() {});'].join( '\n', ), errors: [{ messageId: 'multipleTestTitle', column: 1, line: 2 }], }, { code: [ 'it.only("it1", function() {});', 'it.only("it1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleTestTitle', column: 1, line: 2 }], }, { code: [ 'describe("describe1", function() {});', 'describe("describe1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleDescribeTitle', column: 1, line: 2 }], }, { code: [ 'describe("describe1", function() {});', 'xdescribe("describe1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleDescribeTitle', column: 1, line: 2 }], }, { code: [ 'fdescribe("describe1", function() {});', 'describe("describe1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleDescribeTitle', column: 1, line: 2 }], }, { code: [ 'describe("describe1", function() {', ' describe("describe2", function() {});', '});', 'describe("describe1", function() {});', ].join('\n'), errors: [{ messageId: 'multipleDescribeTitle', column: 1, line: 4 }], }, { code: [ 'describe("describe", () => {', ' it(`testing backticks with the same title`, () => {});', ' it(`testing backticks with the same title`, () => {});', '});', ].join('\n'), env: { es6: true, }, errors: [{ messageId: 'multipleTestTitle', column: 5, line: 3 }], }, ], });