beforeEach(() => { input = new Subject(); buildSystem = new dummy.BuildSystem(); tasks = [{ type: 'ex', label: 'Test Task', description: 'A great task to test', enabled: true, icon: 'squirrel', }]; buildSystem._tasks.next(tasks); spyOn(buildSystem, 'observeTasks').andCallThrough(); const state = { ...createEmptyAppState(), activeBuildSystemId: buildSystem.id, buildSystems: new Map([[buildSystem.id, buildSystem]]), }; outputStream = new Subject(); applyActionMiddleware(input, () => state).subscribe(outputStream); outputPromise = outputStream.toArray().toPromise(); });