From 4380f79723187c316b2aa879f3ff9dc1c2c13ad6 Mon Sep 17 00:00:00 2001 From: Armano Date: Sat, 2 Feb 2019 22:35:21 +0100 Subject: [PATCH 1/2] test(*): update eslint-plugin-jest and enable recommended rules --- .eslintrc.json | 15 +++++++++++---- package.json | 2 +- packages/parser/tests/lib/parser.ts | 2 +- packages/typescript-estree/tests/lib/parse.ts | 6 +++--- .../typescript-estree/tests/lib/semanticInfo.ts | 4 ++-- .../tests/lib/warn-on-unsupported-ts.ts | 1 + yarn.lock | 8 ++++---- 7 files changed, 23 insertions(+), 15 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index f44790c843c8..40a5182652ad 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -29,10 +29,10 @@ "overrides": [ { "files": [ - "packages/eslint-plugin-tslint/**/*.ts", - "packages/eslint-plugin/**/*.js", - "packages/parser/**/*.ts", - "packages/typescript-estree/**/*.ts" + "packages/eslint-plugin-tslint/tests/**/*.ts", + "packages/eslint-plugin/tests/**/*.js", + "packages/parser/tests/**/*.ts", + "packages/typescript-estree/tests/**/*.ts" ], "env": { "jest/globals": true @@ -40,8 +40,15 @@ "rules": { "jest/no-disabled-tests": "warn", "jest/no-focused-tests": "error", + "jest/no-alias-methods": "error", "jest/no-identical-title": "error", + "jest/no-jasmine-globals": "error", + "jest/no-jest-import": "error", + "jest/no-test-prefixes": "error", + "jest/no-test-callback": "error", + "jest/no-test-return-statement": "error", "jest/prefer-to-have-length": "warn", + "jest/prefer-spy-on": "error", "jest/valid-expect": "error" } }, diff --git a/package.json b/package.json index 18059f7381ed..a95c4a1a5710 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "cz-conventional-changelog": "2.1.0", "eslint": "^5.12.1", "eslint-plugin-eslint-plugin": "^2.0.1", - "eslint-plugin-jest": "^22.1.3", + "eslint-plugin-jest": "^22.2.2", "glob": "7.1.2", "husky": "^1.3.1", "jest": "23.6.0", diff --git a/packages/parser/tests/lib/parser.ts b/packages/parser/tests/lib/parser.ts index bfc23bac5abb..332be8b6e43c 100644 --- a/packages/parser/tests/lib/parser.ts +++ b/packages/parser/tests/lib/parser.ts @@ -24,7 +24,7 @@ describe('parser', () => { sourceType: 'script', useJSXTextNode: true }); - expect(spyScope).toHaveBeenCalledWith(jasmine.any(Object), { + expect(spyScope).toHaveBeenCalledWith(expect.any(Object), { ecmaFeatures: {}, sourceType: 'script' }); diff --git a/packages/typescript-estree/tests/lib/parse.ts b/packages/typescript-estree/tests/lib/parse.ts index fc7e8af99a10..6bed7ce8bcef 100644 --- a/packages/typescript-estree/tests/lib/parse.ts +++ b/packages/typescript-estree/tests/lib/parse.ts @@ -82,7 +82,7 @@ describe('parse()', () => { }); expect(spy).toHaveBeenCalledWith( - jasmine.any(Object), + expect.any(Object), { code: 'let foo = bar;', comment: true, @@ -96,8 +96,8 @@ describe('parse()', () => { projects: [], range: true, strict: false, - tokens: jasmine.any(Array), - tsconfigRootDir: jasmine.any(String), + tokens: expect.any(Array), + tsconfigRootDir: expect.any(String), useJSXTextNode: false }, false diff --git a/packages/typescript-estree/tests/lib/semanticInfo.ts b/packages/typescript-estree/tests/lib/semanticInfo.ts index e45cae843ed5..f5612f191cc5 100644 --- a/packages/typescript-estree/tests/lib/semanticInfo.ts +++ b/packages/typescript-estree/tests/lib/semanticInfo.ts @@ -179,7 +179,7 @@ describe('semanticInfo', () => { badConfig.project = './tsconfigs.json'; expect(() => parseCodeAndGenerateServices(readFileSync(fileName, 'utf8'), badConfig) - ).toThrowError(/File .+tsconfigs\.json' not found/); + ).toThrow(/File .+tsconfigs\.json' not found/); }); it('fail to read project file', () => { @@ -188,7 +188,7 @@ describe('semanticInfo', () => { badConfig.project = '.'; expect(() => parseCodeAndGenerateServices(readFileSync(fileName, 'utf8'), badConfig) - ).toThrowError(/File .+semanticInfo' not found/); + ).toThrow(/File .+semanticInfo' not found/); }); it('malformed project file', () => { diff --git a/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts b/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts index d984007bf757..0cef3cb2a125 100644 --- a/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts +++ b/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts @@ -11,6 +11,7 @@ describe('Warn on unsupported TypeScript version', () => { it('should warn the user if they are using an unsupported TypeScript version', () => { (semver.satisfies as jest.Mock).mockReturnValue(false); + // eslint-disable-next-line jest/prefer-spy-on console.log = jest.fn(); parser.parse(''); expect(console.log).toHaveBeenCalledWith( diff --git a/yarn.lock b/yarn.lock index 6980f52cafb8..1969160e6c41 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2378,10 +2378,10 @@ eslint-plugin-eslint-plugin@^2.0.1: resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.0.1.tgz#d275434969dbde3da1d4cb7a121dc8d88457c786" integrity sha512-kJ5TZsRJH/xYstG07v3YeOy/W5SDAEzV+bvvoL0aiG1HtqDmg4mJvNPnn/JngANMmsx8oXlJrIcBTCpJzm+9kg== -eslint-plugin-jest@^22.1.3: - version "22.1.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.1.3.tgz#4444108dfcddc5d2117ed6dc551f529d7e73a99e" - integrity sha512-JTZTI6WQoNruAugNyCO8fXfTONVcDd5i6dMRFA5g3rUFn1UDDLILY1bTL6alvNXbW2U7Sc2OSpi8m08pInnq0A== +eslint-plugin-jest@^22.2.2: + version "22.2.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.2.2.tgz#2a80d70a20c27dfb1503a6f32cdcb647fe5476df" + integrity sha512-hnWgh9o39VJfz6lJEyQJdTW7dN2yynlGkmPOlU/oMHh+d7WVMsJP1GeDTB520VCDljEdKExCwD5IBpQIUl4mJg== eslint-scope@^4.0.0: version "4.0.0" From a5e3d8bdb1aadeb2ea022fc874cef53a857ff4a1 Mon Sep 17 00:00:00 2001 From: Armano Date: Sun, 3 Feb 2019 00:16:17 +0100 Subject: [PATCH 2/2] test(ts-estree): use mocks instead of assignment for console.log --- packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts b/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts index 0cef3cb2a125..565b997c35fc 100644 --- a/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts +++ b/packages/typescript-estree/tests/lib/warn-on-unsupported-ts.ts @@ -11,8 +11,7 @@ describe('Warn on unsupported TypeScript version', () => { it('should warn the user if they are using an unsupported TypeScript version', () => { (semver.satisfies as jest.Mock).mockReturnValue(false); - // eslint-disable-next-line jest/prefer-spy-on - console.log = jest.fn(); + jest.spyOn(console, 'log').mockImplementation(); parser.parse(''); expect(console.log).toHaveBeenCalledWith( expect.stringContaining( pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy