diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 61632be96f..76086a18de 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,7 @@ jobs: cache-dependency-path: '**/pnpm-lock.yaml' - run: pnpm install --frozen-lockfile --prefer-offline - uses: nrwl/nx-set-shas@v4 - - run: pnpm exec nx affected -t test --exclude=docs-app --skip-nx-cache + - run: pnpm exec nx affected -t test --exclude=docs-app --skip-nx-cache --parallel=3 e2e-affected: runs-on: ubuntu-latest @@ -98,7 +98,7 @@ jobs: cache-dependency-path: '**/pnpm-lock.yaml' - run: pnpm install --frozen-lockfile --prefer-offline - uses: nrwl/nx-set-shas@v4 - - run: pnpm exec nx affected -t build --exclude=docs-app,www --skip-nx-cache + - run: pnpm exec nx affected -t build --exclude=docs-app,www --skip-nx-cache --parallel=3 schematics-core-check: runs-on: ubuntu-latest diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 9fa84c3c8c..81f9d57130 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -63,7 +63,7 @@ jobs: cache-dependency-path: '**/pnpm-lock.yaml' - run: pnpm install --frozen-lockfile --prefer-offline - uses: nrwl/nx-set-shas@v4 - - run: pnpm exec nx run-many -t test --exclude=docs-app --skip-nx-cache + - run: pnpm exec nx run-many -t test --exclude=docs-app --skip-nx-cache --parallel=3 e2e: runs-on: ubuntu-latest @@ -119,7 +119,7 @@ jobs: cache-dependency-path: '**/pnpm-lock.yaml' - run: pnpm install --frozen-lockfile --prefer-offline - uses: nrwl/nx-set-shas@v4 - - run: pnpm exec nx run-many -t build --exclude=docs-app,www + - run: pnpm exec nx run-many -t build --exclude=docs-app,www --skip-nx-cache --parallel=3 - uses: actions/upload-artifact@v4 with: name: artifact-modules diff --git a/modules/component-store/spec/types/component-store.types.spec.ts b/modules/component-store/spec/types/component-store.types.spec.ts index e3d970ed22..3790e474a1 100644 --- a/modules/component-store/spec/types/component-store.types.spec.ts +++ b/modules/component-store/spec/types/component-store.types.spec.ts @@ -25,7 +25,6 @@ describe('ComponentStore types', () => { describe('infers Subscription', () => { it('when argument type is specified and a variable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => number$)('string');`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); @@ -34,38 +33,32 @@ describe('ComponentStore types', () => { 'a variable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => EMPTY)('string');`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); } ); it('when argument type is specified and an Observable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => EMPTY)(string$);`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when argument type is specified as Observable and any type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => EMPTY)(5);`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when generic type is specified and a variable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e) => number$)('string');`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when generic type is specified as unknown and a variable with any type is passed', () => { const effectTest = `const sub = componentStore.effect((e) => number$)('string');`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when generic type is specified as unknown and origin can still be piped', () => { const effectTest = `const sub = componentStore.effect((e) => e.pipe(concatMap(() => of())))('string');`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); @@ -77,13 +70,11 @@ describe('ComponentStore types', () => { it('when argument type is an interface and a variable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => number$)({prop: 'string'});`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when argument type is a partial interface and a variable with corresponding type is passed', () => { const effectTest = `const sub = componentStore.effect((e: Observable>) => number$)({prop: 'string'});`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); }); @@ -91,37 +82,31 @@ describe('ComponentStore types', () => { describe('for void types', () => { it('when generic type is specified as void the argument is optional', () => { const effectTest = `const sub = componentStore.effect((e) => EMPTY)();`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when argument type is specified as Observable the argument is optional', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => EMPTY)();`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when type is not specified the argument is optional', () => { const effectTest = `const sub = componentStore.effect((e) => EMPTY)();`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when type is specified as void the argument can be a void$', () => { const effectTest = `const sub = componentStore.effect((e: Observable) => EMPTY)(of());`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when type is specified as void the argument can be a void', () => { const effectTest = `const sub = componentStore.effect((e) => EMPTY)({} as unknown as void);`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); it('when generic type is specified as void and origin can still be piped', () => { const effectTest = `const sub = componentStore.effect((e) => e.pipe(concatMap(() => number$)))();`; - expectSnippet(effectTest).toSucceed(); expectSnippet(effectTest).toInfer('sub', 'Subscription'); }); }); @@ -207,67 +192,56 @@ describe('ComponentStore types', () => { describe('infers Subscription', () => { it('when argument type is specified and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: string) => ({...state}))('string');`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is specified and an Observable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: string) => ({...state}))(string$);`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is an interface and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: Obj) => ({...state}))({prop: 'obj'});`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is an partial interface and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: Partial) => ({...state}))({prop: 'obj'});`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is an enum and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: LoadingState) => ({...state}))(LoadingState.LOADED);`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is a union and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: string|number) => ({...state}))(5);`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is an intersection and a variable with corresponding type is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: {p: string} & {p2: number}) => ({...state}))({p: 's', p2: 3});`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when argument type is unknown and any variable is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v: unknown) => ({...state}))({anything: 'works'});`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when generic type is specified and any variable is passed', () => { const updaterTest = `const sub = componentStore.updater((state, v) => ({...state}))('works');`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('sub', 'Subscription'); }); it('when type is not specified and nothing is passed', () => { const updaterTest = `const v = componentStore.updater((state) => ({...state}))();`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('v', 'void'); }); it('when type void is specified and nothing is passed', () => { const updaterTest = `const v = componentStore.updater((state) => ({...state}))();`; - expectSnippet(updaterTest).toSucceed(); expectSnippet(updaterTest).toInfer('v', 'void'); }); }); diff --git a/modules/signals/entities/spec/types/entity-config.types.spec.ts b/modules/signals/entities/spec/types/entity-config.types.spec.ts index a9ee0e383c..baeb1221f6 100644 --- a/modules/signals/entities/spec/types/entity-config.types.spec.ts +++ b/modules/signals/entities/spec/types/entity-config.types.spec.ts @@ -27,7 +27,6 @@ describe('entityConfig', () => { const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('userConfig', '{ entity: User; }'); }); @@ -41,7 +40,6 @@ describe('entityConfig', () => { const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('userConfig', '{ entity: User; collection: "user"; }'); }); @@ -67,7 +65,6 @@ describe('entityConfig', () => { const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'userConfig1', '{ entity: User; selectId: SelectEntityId>; }' @@ -134,7 +131,6 @@ describe('entityConfig', () => { const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'userConfig1', '{ entity: User; collection: "user"; selectId: SelectEntityId>; }' diff --git a/modules/signals/spec/types/signal-state.types.spec.ts b/modules/signals/spec/types/signal-state.types.spec.ts index 6664d1952d..f52d427859 100644 --- a/modules/signals/spec/types/signal-state.types.spec.ts +++ b/modules/signals/spec/types/signal-state.types.spec.ts @@ -32,7 +32,6 @@ describe('signalState', () => { const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('state', 'SignalState'); }); @@ -51,8 +50,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'state', 'SignalState<{ user: { age: number; details: { first: string; last: string; }; address: string[]; }; numbers: number[]; ngrx: string; }>' @@ -98,8 +95,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('user', 'DeepSignal'); result.toInfer('lastName', 'Signal'); result.toInfer('bool', 'Signal'); @@ -127,8 +122,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('arrayStateValue', 'string[]'); result.toInfer('arrayStateKeys', 'unique symbol | unique symbol'); result.toInfer('setStateValue', 'Set'); @@ -159,8 +152,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('weakSetStateValue', 'WeakSet<{ foo: string; }>'); result.toInfer('weakSetStateKeys', 'unique symbol | unique symbol'); result.toInfer('dateStateValue', 'Date'); @@ -179,8 +170,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('stateValue', '() => void'); result.toInfer('stateKeys', 'unique symbol | unique symbol'); }); @@ -201,8 +190,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('state', 'SignalState'); result.toInfer('foo', 'Signal | undefined'); result.toInfer('bar', 'DeepSignal<{ baz?: number | undefined; }>'); @@ -247,8 +234,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('state1', 'SignalState<{ [key: string]: number; }>'); result.toInfer('state1Keys', 'unique symbol | unique symbol'); result.toInfer( @@ -279,8 +264,6 @@ describe('signalState', () => { const snippet = `const state = signalState({})`; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('state', 'SignalState<{}>'); }); @@ -306,8 +289,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('state', 'SignalState'); result.toInfer('foo', 'Signal'); result.toInfer('bar', 'DeepSignal<{ baz: { n: number; } | null; }>'); @@ -330,8 +311,6 @@ describe('signalState', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('name', 'Signal'); result.toInfer('length1', 'Signal'); result.toInfer('name2', 'DeepSignal<{ length: string; }>'); diff --git a/modules/signals/spec/types/signal-store.types.spec.ts b/modules/signals/spec/types/signal-store.types.spec.ts index 190b439016..86d5bc9291 100644 --- a/modules/signals/spec/types/signal-store.types.spec.ts +++ b/modules/signals/spec/types/signal-store.types.spec.ts @@ -31,8 +31,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'Store', 'Type<{ foo: Signal; bar: Signal; } & StateSource<{ foo: string; bar: number[]; }>>' @@ -62,8 +60,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ user: DeepSignal<{ age: number; details: { first: string; flags: boolean[]; }; }>; } & StateSource<{ user: { age: number; details: { first: string; flags: boolean[]; }; }; }>' @@ -103,8 +99,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('foo', 'Signal<{ [key: string]: string; }>'); result.toInfer('baz', 'Signal>'); result.toInfer('z', 'Signal>'); @@ -142,8 +136,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('user', 'DeepSignal'); result.toInfer('firstName', 'Signal'); result.toInfer('num', 'Signal'); @@ -171,8 +163,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('arrayStoreKeys', 'unique symbol'); result.toInfer('setStoreKeys', 'unique symbol'); result.toInfer('mapStoreKeys', 'unique symbol'); @@ -199,8 +189,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('weakMapStoreKeys', 'unique symbol'); result.toInfer('dateStoreKeys', 'unique symbol'); result.toInfer('errorStoreKeys', 'unique symbol'); @@ -215,8 +203,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('storeKeys', 'unique symbol'); }); @@ -224,8 +210,6 @@ describe('signalStore', () => { const snippet = `const Store = signalStore(withState({}))`; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('Store', 'Type<{} & StateSource<{}>>'); }); @@ -254,8 +238,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ foo: Signal; bar: DeepSignal<{ baz: { b: boolean; } | null; }>; x: DeepSignal<{ y: { z: number | undefined; }; }>; } & StateSource<{ foo: number | { ...; }; bar: { ...; }; x: { ...; }; }>' @@ -280,8 +262,6 @@ describe('signalStore', () => { `; const result1 = expectSnippet(snippet1); - - result1.toSucceed(); result1.toInfer( 'Store', 'Type<{ name: DeepSignal<{ x: { y: string; }; }>; arguments: Signal; call: Signal; } & StateSource<{ name: { x: { y: string; }; }; arguments: number[]; call: boolean; }>>' @@ -298,8 +278,6 @@ describe('signalStore', () => { `; const result2 = expectSnippet(snippet2); - - result2.toSucceed(); result2.toInfer( 'Store', 'Type<{ apply: Signal; bind: DeepSignal<{ foo: string; }>; prototype: Signal; } & StateSource<{ apply: string; bind: { foo: string; }; prototype: string[]; }>>' @@ -315,8 +293,6 @@ describe('signalStore', () => { `; const result3 = expectSnippet(snippet3); - - result3.toSucceed(); result3.toInfer( 'Store', 'Type<{ length: Signal; caller: Signal; } & StateSource<{ length: number; caller: undefined; }>>' @@ -332,8 +308,6 @@ describe('signalStore', () => { `; const result1 = expectSnippet(snippet1); - - result1.toSucceed(); result1.toInfer('name', 'Signal | undefined'); const snippet2 = ` @@ -346,8 +320,6 @@ describe('signalStore', () => { `; const result2 = expectSnippet(snippet2); - - result2.toSucceed(); result2.toInfer('length', 'DeepSignal<{ name: boolean; }>'); result2.toInfer('name', 'Signal'); }); @@ -369,8 +341,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ bar: DeepSignal<{ baz?: number | undefined; }>; x: DeepSignal<{ y?: { z: boolean; } | undefined; }>; } & StateSource<{ bar: { baz?: number | undefined; }; x: { y?: { z: boolean; } | undefined; }; }>' @@ -396,8 +366,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('foo', 'Signal<{ s: string; } | undefined> | undefined'); }); @@ -409,8 +377,6 @@ describe('signalStore', () => { `; const result1 = expectSnippet(snippet1); - - result1.toSucceed(); result1.toInfer('storeKeys', 'unique symbol'); const snippet2 = ` @@ -422,8 +388,6 @@ describe('signalStore', () => { `; const result2 = expectSnippet(snippet2); - - result2.toSucceed(); result2.toInfer('storeKeys', 'unique symbol'); const snippet3 = ` @@ -438,8 +402,6 @@ describe('signalStore', () => { `; const result3 = expectSnippet(snippet3); - - result3.toSucceed(); result3.toInfer('storeKeys', 'unique symbol'); }); @@ -469,8 +431,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store1', '{ count: Signal; } & StateSource<{ count: number; }>' @@ -512,8 +472,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store1', '{ count: Signal; } & StateSource<{ count: number; }>' @@ -555,8 +513,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store1', '{ count: Signal; } & WritableStateSource<{ count: number; }>' @@ -722,8 +678,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ ngrx: Signal; x: DeepSignal<{ y: string; }>; signals: Signal; mgmt: (arg: boolean) => number; } & StateSource<{ ngrx: string; x: { y: string; }; }>' @@ -751,8 +705,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ foo: Signal; bar: Signal; baz: (x: number) => void; } & StateSource<{ foo: number; }>' @@ -800,8 +752,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer( 'store', '{ count1: Signal; doubleCount2: Signal; increment1: () => void; } & StateSource<{ count1: number; }>' @@ -1106,8 +1056,6 @@ describe('signalStore', () => { `; const result = expectSnippet(snippet); - - result.toSucceed(); result.toInfer('selectedEntity', 'Signal'); result.toInfer('selectedEntity2', 'Signal'); result.toInfer('loadEntities', '() => Promise'); diff --git a/modules/signals/spec/types/with-computed.types.spec.ts b/modules/signals/spec/types/with-computed.types.spec.ts index a7e17ce710..e18808e8ad 100644 --- a/modules/signals/spec/types/with-computed.types.spec.ts +++ b/modules/signals/spec/types/with-computed.types.spec.ts @@ -77,7 +77,6 @@ describe('withComputed', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('user', 'Signal<{ firstName: string; lastName: string; }>'); }); @@ -96,7 +95,6 @@ describe('withComputed', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'userSignal', 'WritableSignal<{ firstName: string; lastName: string; }>' @@ -126,7 +124,6 @@ describe('withComputed', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'userSignal', 'DeepSignal<{ name: string; address: { street: string; city: string; }; }>' diff --git a/modules/signals/spec/types/with-linked-state.types.spec.ts b/modules/signals/spec/types/with-linked-state.types.spec.ts index db8fa28ee1..19a05f8b03 100644 --- a/modules/signals/spec/types/with-linked-state.types.spec.ts +++ b/modules/signals/spec/types/with-linked-state.types.spec.ts @@ -73,7 +73,6 @@ describe('withLinkedState', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('firstname', 'Signal'); result.toInfer('lastname', 'Signal'); }); @@ -95,7 +94,6 @@ describe('withLinkedState', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('firstname', 'Signal'); result.toInfer('lastname', 'Signal'); }); @@ -117,7 +115,6 @@ describe('withLinkedState', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'location', 'DeepSignal<{ city: string; country: string; }>' @@ -142,7 +139,6 @@ describe('withLinkedState', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer( 'location', 'DeepSignal<{ city: string; country: string; }>' @@ -169,7 +165,6 @@ describe('withLinkedState', () => { `; const result = expectSnippet(snippet); - result.toSucceed(); result.toInfer('bar', 'Signal'); result.toInfer('baz', 'Signal'); result.toInfer('qux', 'DeepSignal<{ x: number; }>'); diff --git a/modules/signals/testing/spec/types/uprotected.types.spec.ts b/modules/signals/testing/spec/types/uprotected.types.spec.ts index 4106421637..ea7bb3d513 100644 --- a/modules/signals/testing/spec/types/uprotected.types.spec.ts +++ b/modules/signals/testing/spec/types/uprotected.types.spec.ts @@ -26,7 +26,6 @@ describe('unprotected', () => { const unprotectedStore = unprotected(store); `; - expectSnippet(snippet).toSucceed(); expectSnippet(snippet).toInfer( 'unprotectedStore', '{ count: Signal; doubleCount: Signal; [STATE_SOURCE]: { count: WritableSignal; }; }' @@ -44,7 +43,6 @@ describe('unprotected', () => { const unprotectedStore = unprotected(store); `; - expectSnippet(snippet).toSucceed(); expectSnippet(snippet).toInfer( 'unprotectedStore', '{ count: Signal; [STATE_SOURCE]: { count: WritableSignal; }; }'