refactor(language-service): split tests into multiple targets

The helps with fighting flakiness
This commit is contained in:
Matthieu Riegler
2026-02-13 00:00:10 +01:00
committed by Matthew Beck (Berry)
parent 7a8ba5cb3d
commit cb5eb2fde1
21 changed files with 89 additions and 23 deletions
@@ -8,7 +8,7 @@
import ts from 'typescript';
import {LSParseConfigHost} from '../src/adapters';
import {LSParseConfigHost} from '../../src/adapters';
describe('LSParseConfigHost.resolve()', () => {
it('should collapse absolute paths', () => {
@@ -9,8 +9,8 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import ts from 'typescript';
import {FixIdForCodeFixesAll} from '../src/codefixes/utils';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {FixIdForCodeFixesAll} from '../../src/codefixes/utils';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('code fixes', () => {
let env: LanguageServiceTestEnv;
@@ -8,7 +8,7 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {isNgSpecificDiagnostic, LanguageServiceTestEnv} from '../testing';
import {isNgSpecificDiagnostic, LanguageServiceTestEnv} from '../../testing';
describe('language-service/compiler integration', () => {
beforeEach(() => {
@@ -12,8 +12,8 @@ import ts from 'typescript';
import {
DisplayInfoKind,
unsafeCastDisplayInfoKindToScriptElementKind,
} from '../src/utils/display_parts';
import {LanguageServiceTestEnv, OpenBuffer, ProjectFiles, TestableOptions} from '../testing';
} from '../../src/utils/display_parts';
import {LanguageServiceTestEnv, OpenBuffer, ProjectFiles, TestableOptions} from '../../testing';
const DIR_WITH_INPUT = {
'Dir': `
@@ -18,7 +18,7 @@ import {
LanguageServiceTestEnv,
OpenBuffer,
Project,
} from '../testing';
} from '../../testing';
describe('definitions', () => {
it('gets definition for template reference in overridden template', () => {
@@ -10,7 +10,7 @@ import {ErrorCode, ngErrorCode} from '@angular/compiler-cli/src/ngtsc/diagnostic
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import ts from 'typescript';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('getSemanticDiagnostics', () => {
let env: LanguageServiceTestEnv;
@@ -9,7 +9,7 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import ts from 'typescript';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('get outlining spans', () => {
beforeEach(() => {
@@ -13,7 +13,7 @@ import {
createModuleAndProjectWithDeclarations,
humanizeDocumentSpanLike,
LanguageServiceTestEnv,
} from '../testing';
} from '../../testing';
describe('get template location for component', () => {
beforeEach(() => {
@@ -8,7 +8,7 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('get typecheck block', () => {
beforeEach(() => {
@@ -17,7 +17,7 @@ import {
LanguageServiceTestEnv,
OpenBuffer,
Project,
} from '../testing';
} from '../../testing';
describe('find references and rename locations', () => {
let env: LanguageServiceTestEnv;
@@ -9,8 +9,8 @@
import ts from 'typescript';
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {LanguageServiceTestEnv, OpenBuffer} from '../testing';
import {TokenEncodingConsts, TokenType, TokenModifier} from '../src/semantic_tokens';
import {TokenEncodingConsts, TokenModifier, TokenType} from '../../src/semantic_tokens';
import {LanguageServiceTestEnv, OpenBuffer} from '../../testing';
describe('semantic tokens', () => {
beforeEach(() => {
@@ -8,7 +8,7 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('Signal input refactoring action', () => {
let env: LanguageServiceTestEnv;
@@ -8,7 +8,7 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../testing';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv} from '../../testing';
describe('Signal queries refactoring action', () => {
let env: LanguageServiceTestEnv;
@@ -15,7 +15,7 @@ import {
humanizeDocumentSpanLike,
LanguageServiceTestEnv,
Project,
} from '../testing';
} from '../../testing';
describe('type definitions', () => {
let env: LanguageServiceTestEnv;
@@ -0,0 +1,31 @@
load("//tools:defaults.bzl", "jasmine_test", "ts_project")
ts_project(
name = "test_lib",
testonly = True,
srcs = glob(["*.ts"]),
deps = [
"//:node_modules/typescript",
"//packages/compiler",
"//packages/compiler-cli/src/ngtsc/core:api",
"//packages/compiler-cli/src/ngtsc/diagnostics",
"//packages/compiler-cli/src/ngtsc/file_system",
"//packages/compiler-cli/src/ngtsc/file_system/testing",
"//packages/compiler-cli/src/ngtsc/testing",
"//packages/compiler-cli/src/ngtsc/typecheck/api",
"//packages/language-service/src",
"//packages/language-service/src/utils",
"//packages/language-service/testing",
],
)
jasmine_test(
name = "test",
data = [
":test_lib",
"//:node_modules/rxjs",
"//packages/compiler-cli/src/ngtsc/testing/fake_common:npm_package",
"//packages/core:npm_package",
],
shard_count = 8,
)
@@ -9,7 +9,11 @@
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import ts from 'typescript';
import {createModuleAndProjectWithDeclarations, LanguageServiceTestEnv, Project} from '../testing';
import {
createModuleAndProjectWithDeclarations,
LanguageServiceTestEnv,
Project,
} from '../../testing';
function quickInfoSkeleton(): {[fileName: string]: string} {
return {
@@ -0,0 +1,31 @@
load("//tools:defaults.bzl", "jasmine_test", "ts_project")
ts_project(
name = "test_lib",
testonly = True,
srcs = glob(["*.ts"]),
deps = [
"//:node_modules/typescript",
"//packages/compiler",
"//packages/compiler-cli/src/ngtsc/core:api",
"//packages/compiler-cli/src/ngtsc/diagnostics",
"//packages/compiler-cli/src/ngtsc/file_system",
"//packages/compiler-cli/src/ngtsc/file_system/testing",
"//packages/compiler-cli/src/ngtsc/testing",
"//packages/compiler-cli/src/ngtsc/typecheck/api",
"//packages/language-service/src",
"//packages/language-service/src/utils",
"//packages/language-service/testing",
],
)
jasmine_test(
name = "test",
data = [
":test_lib",
"//:node_modules/rxjs",
"//packages/compiler-cli/src/ngtsc/testing/fake_common:npm_package",
"//packages/core:npm_package",
],
shard_count = 8,
)
@@ -7,9 +7,9 @@
*/
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {getText} from '../testing/src/util';
import {getText} from '../../testing/src/util';
import {LanguageServiceTestEnv, OpenBuffer} from '../testing';
import {LanguageServiceTestEnv, OpenBuffer} from '../../testing';
describe('signature help', () => {
beforeEach(() => {
@@ -19,8 +19,8 @@ import {
objectPropertyAssignmentForKey,
updateImport,
updateObjectValueForKey,
} from '../src/utils/ts_utils';
import {LanguageServiceTestEnv, OpenBuffer, Project} from '../testing';
} from '../../src/utils/ts_utils';
import {LanguageServiceTestEnv, OpenBuffer, Project} from '../../testing';
describe('TS util', () => {
describe('collectMemberMethods', () => {
@@ -7,7 +7,7 @@
*/
import {initMockFileSystem} from '@angular/compiler-cli/src/ngtsc/file_system/testing';
import {LanguageServiceTestEnv} from '../testing';
import {LanguageServiceTestEnv} from '../../testing';
describe('Angular version detection', () => {
let env: LanguageServiceTestEnv;