Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions modules/store/testing/spec/mock_store.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ describe('Mock Store with TestBed', () => {
],
});

mockStore = TestBed.inject(MockStore);
mockStore = TestBed.inject<MockStore<TestAppSchema>>(MockStore);
});

afterEach(() => {
Expand Down Expand Up @@ -325,7 +325,7 @@ describe('Mock Store with Injector', () => {
it('should provide MockStore', () =>
new Promise<void>((done) => {
const mockStore: MockStore<typeof initialState> =
injector.get(MockStore);
injector.get<MockStore<typeof initialState>>(MockStore);

mockStore.pipe(take(1)).subscribe((state) => {
expect(state).toBe(initialState);
Expand All @@ -334,16 +334,18 @@ describe('Mock Store with Injector', () => {
}));

it('should provide the same instance for Store and MockStore', () => {
const store: Store<typeof initialState> = injector.get(Store);
const mockStore: MockStore<typeof initialState> = injector.get(MockStore);
const store: Store<typeof initialState> =
injector.get<Store<typeof initialState>>(Store);
const mockStore: MockStore<typeof initialState> =
injector.get<MockStore<typeof initialState>>(MockStore);

expect(store).toBe(mockStore);
});

it('should use a mock selector', () =>
new Promise<void>((done) => {
const mockStore: MockStore<typeof initialState> =
injector.get(MockStore);
injector.get<MockStore<typeof initialState>>(MockStore);

mockStore
.select(mockSelector.selector)
Expand Down Expand Up @@ -373,7 +375,7 @@ describe('Mock Store with Injector', () => {
it('should provide MockState', () =>
new Promise<void>((done) => {
const mockState: MockState<typeof initialState> =
injector.get(MockState);
injector.get<MockState<typeof initialState>>(MockState);

mockState.pipe(take(1)).subscribe((state) => {
expect(state).toEqual({});
Expand All @@ -392,7 +394,8 @@ describe('Mock Store with Injector', () => {
}));

it('should provide the same instance for MockState and StateObservable', () => {
const mockState: MockState<typeof initialState> = injector.get(MockState);
const mockState: MockState<typeof initialState> =
injector.get<MockState<typeof initialState>>(MockState);
const stateObservable: StateObservable = injector.get(StateObservable);

expect(mockState).toBe(stateObservable);
Expand Down Expand Up @@ -490,7 +493,7 @@ describe('Refreshing state', () => {
providers: [provideMockStore()],
}).compileComponents();

mockStore = TestBed.inject(MockStore);
mockStore = TestBed.inject<MockStore<TodoState>>(MockStore);
mockSelector = mockStore.overrideSelector(todos, initialTodos);

fixture = TestBed.createComponent(TodosComponent);
Expand Down
2 changes: 1 addition & 1 deletion modules/store/testing/src/testing.ts
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ export function createMockStore<T>(
config: MockStoreConfig<T> = {}
): MockStore<T> {
const injector = Injector.create({ providers: provideMockStore(config) });
return injector.get(MockStore);
return injector.get<MockStore<T>>(MockStore);
}

export { MockReducerManager } from './mock_reducer_manager';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import { MaterialModule } from '@example-app/material';

describe('Login Page', () => {
let fixture: ComponentFixture<LoginPageComponent>;
let store: MockStore;
let store: MockStore<fromAuth.State>;
let instance: LoginPageComponent;

beforeEach(() => {
Expand All @@ -29,7 +29,7 @@ describe('Login Page', () => {

fixture = TestBed.createComponent(LoginPageComponent);
instance = fixture.componentInstance;
store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromAuth.State>>(MockStore);

vi.spyOn(store, 'dispatch');
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@ import { Observable } from 'rxjs';

describe('Auth Guard', () => {
let guard: Observable<boolean>;
let store: MockStore;
let store: MockStore<fromAuth.State>;
let loggedIn: MemoizedSelector<fromAuth.State, boolean>;

beforeEach(() => {
TestBed.configureTestingModule({
providers: [provideMockStore()],
});

store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromAuth.State>>(MockStore);
guard = TestBed.runInInjectionContext(authGuard);
loggedIn = store.overrideSelector(fromAuth.selectLoggedIn, false);
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import { MaterialModule } from '@example-app/material';

describe('Collection Page', () => {
let fixture: ComponentFixture<CollectionPageComponent>;
let store: MockStore;
let store: MockStore<fromBooks.State>;

beforeEach(() => {
TestBed.configureTestingModule({
Expand All @@ -39,7 +39,7 @@ describe('Collection Page', () => {
});

fixture = TestBed.createComponent(CollectionPageComponent);
store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromBooks.State>>(MockStore);

vi.spyOn(store, 'dispatch');
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import { MaterialModule } from '@example-app/material';

describe('Find Book Page', () => {
let fixture: ComponentFixture<FindBookPageComponent>;
let store: MockStore;
let store: MockStore<fromBooks.State>;
let instance: FindBookPageComponent;

beforeEach(() => {
Expand Down Expand Up @@ -54,7 +54,7 @@ describe('Find Book Page', () => {

fixture = TestBed.createComponent(FindBookPageComponent);
instance = fixture.componentInstance;
store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromBooks.State>>(MockStore);

vi.spyOn(store, 'dispatch');
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import { MaterialModule } from '@example-app/material';

describe('Selected Book Page', () => {
let fixture: ComponentFixture<SelectedBookPageComponent>;
let store: MockStore;
let store: MockStore<fromBooks.State>;
let instance: SelectedBookPageComponent;

beforeEach(() => {
Expand All @@ -40,7 +40,7 @@ describe('Selected Book Page', () => {

fixture = TestBed.createComponent(SelectedBookPageComponent);
instance = fixture.componentInstance;
store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromBooks.State>>(MockStore);

vi.spyOn(store, 'dispatch');
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import { MaterialModule } from '@example-app/material';

describe('View Book Page', () => {
let fixture: ComponentFixture<ViewBookPageComponent>;
let store: MockStore;
let store: MockStore<fromBooks.State>;
let route: ActivatedRoute;

beforeEach(() => {
Expand Down Expand Up @@ -45,7 +45,7 @@ describe('View Book Page', () => {
});

fixture = TestBed.createComponent(ViewBookPageComponent);
store = TestBed.inject(MockStore);
store = TestBed.inject<MockStore<fromBooks.State>>(MockStore);
route = TestBed.inject(ActivatedRoute);

vi.spyOn(store, 'dispatch');
Expand Down
1 change: 1 addition & 0 deletions tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
"ignoreDeprecations": "6.0",
"emitDecoratorMetadata": true,
"noImplicitOverride": true,
"stableTypeOrdering": true,
"useDefineForClassFields": false,
"lib": ["ES2022", "dom"],
"outDir": "../out-tsc/app",
Expand Down