NotesWhat is notes.io?

Notes brand slogan

Notes - notes.io

import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { TestBed } from '@angular/core/testing';
import { SchwabDfgMfeContextContract } from '../../../../dfg-mfe-contracts/src/lib/schwab-dfg-mfe-context.contract';
import { SchwabDfgStoreService } from '../shared/core/store-service/schwab-dfg-store.service';
import { SchwabDfgAnalyticsService } from '../shared/services/analytics-service/schwab-dfg-analytics.service';
import { FakeContextContract } from '../shared/services/fake-context-contract';
import { SchwabDfgGatewayService } from '../shared/services/gateway-service/schwab-dfg-gateway.service';
import { SchwabDfgDashboardComponentmodelService } from './schwab-dfg-dashboard.component-model.service';
import { of } from 'rxjs';
import { SchwabDfgConstants } from '../shared/schwab-dfg-constants';
import { SchwabDfgOnboarding } from '../shared/models/schwab-dfg-onboarding.model';
import { SchwabDfgDashboardResponseModel } from '../shared/models/schwab-dfg-dashboard-response.model';
import { SchwabDfgMyRetirementModel }from 'projects/schwab/dfg-mfe-contracts/src/lib/model/schwab-dfg-my-reitrement-model';

describe('SchwabDfgDashboardComponentmodelService', () => {
let service: SchwabDfgDashboardComponentmodelService;
let gatewayService: SchwabDfgGatewayService;
let httpMock: HttpTestingController;

const mockDashboardResponse: SchwabDfgDashboardResponseModel = {
cards: [],
dashboardData: [],
images: [],
textFields: [],
buttons: [],
modals: [],
isEnabled: false
};

const mockRetirementProgressData: SchwabDfgMyRetirementModel = {
isRetirementProgressEnabled: true,
isAdviceAllowed: true,
isIncreaseContributionAllowed: true,
mrpIncomeReplacement: 5,
mrpUpdatedDate: new Date(),
};

const mockOnboardingData: SchwabDfgOnboarding = {
maritalStatus: 'Single',
numberOfDependents: 0,
householdIncome: 50000,
financialWellness: 'Good',
};

beforeEach(() => {
TestBed.configureTestingModule({
imports: [ HttpClientTestingModule,
],
providers: [
SchwabDfgDashboardComponentmodelService,
SchwabDfgGatewayService,
SchwabDfgStoreService,
SchwabDfgAnalyticsService,
{
provide: SchwabDfgMfeContextContract,
useValue: new FakeContextContract(),
}
],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
});

service = TestBed.get(SchwabDfgDashboardComponentmodelService);
gatewayService = TestBed.get(SchwabDfgGatewayService);
httpMock = TestBed.get(HttpTestingController);
});

afterEach(() => {
httpMock.verify();
});

it('should be created', () => {
expect(service).toBeTruthy();
});

it('should execute service and set access settings in configDataRequest', () => {
spyOn(gatewayService, 'executeService').and.returnValue(of({ body: mockDashboardResponse }));
spyOn(service, 'setAccessSettings').and.callThrough();
spyOn(service, 'ModellingDashBoardData').and.callThrough();

service['configDataRequest'](mockRetirementProgressData).subscribe((response) => {
expect(response).toBeDefined();
// expect(service.setAccessSettings).toHaveBeenCalled();
// expect(service.ModellingDashBoardData).toHaveBeenCalledWith(mockDashboardResponse, mockRetirementProgressData);
});

expect(gatewayService.executeService).toHaveBeenCalledWith(
'dfgOnboardingBff',
'GET',
'',
'/dashboard',
{ 'no-cache': '1', 'Schwab-Retirement-Progress-Supression': 'true' }
);
});

it('should create onboarding model and return ModellingOnboardingData', () => {
spyOn(gatewayService, 'executeService').and.returnValue(of({ body: mockOnboardingData }));
spyOn(service, 'ModellingOnboardingData').and.callThrough();

// service.createOnboardingModel().subscribe((response) => {
// expect(response).toEqual(mockOnboardingData);
// expect(service.ModellingOnboardingData).toHaveBeenCalledWith(mockOnboardingData);
// });

expect(gatewayService.executeService).toHaveBeenCalledWith(
'dfgOnboardingBff',
'GET',
'',
'',
{ 'no-cache': '1' }
);
});

it('should return default onboarding data if input is undefined', () => {
const result = service['ModellingOnboardingData'](undefined);
expect(result.maritalStatus).toBe('');
expect(result.numberOfDependents).toBeNull();
expect(result.householdIncome).toBeNull();
expect(result.financialWellness).toBe('');
});

it('should return the same onboarding data if input is defined', () => {
const result = service['ModellingOnboardingData'](mockOnboardingData);
expect(result).toEqual(mockOnboardingData);
});

it('should set access settings correctly', () => {
const mockData = { isEnabled: true } as SchwabDfgDashboardResponseModel;
service['setAccessSettings'](mockData);
// service.context.isFullAccess.subscribe(value => {
// expect(value).toBe(true);
// });
});

it('should model dashboard data correctly', () => {
const mockData = { ...mockDashboardResponse, cards: [], textFields: [], images: [], modals: [] } as SchwabDfgDashboardResponseModel;

const result = service['ModellingDashBoardData'](mockData, mockRetirementProgressData);
expect(result).toBeDefined();
expect(result.dashboardCardData.length).toBe(0);
});

it('should handle retirement progress suppression in ModellingDashBoardData', () => {
const mockData = { ...mockDashboardResponse, cards: [{ title: 'Retirement' }], textFields: [], images: [], modals: [] } as SchwabDfgDashboardResponseModel;
const result = service['ModellingDashBoardData'](mockData, mockRetirementProgressData);

const retirementCard = result.dashboardCardData.find(card => card.dashboard.moduleCode === SchwabDfgConstants.RetirementModuleCode.toUpperCase());
expect(retirementCard.dashboard.isProgressSuppressionEnabled).toBe(true);
expect(retirementCard.dashboard.goalProgressPercentage).toBe(mockRetirementProgressData.mrpIncomeReplacement);
expect(retirementCard.dashboard.currentSavingsAsOfDate).toBe(mockRetirementProgressData.mrpUpdatedDate);
});
});


import { Injectable } from '@angular/core';
import { SchwabDfgMyRetirementModel }from 'projects/schwab/dfg-mfe-contracts/src/lib/model/schwab-dfg-my-reitrement-model';
import { SchwabDfgMfeContextContract } from 'projects/schwab/dfg-mfe-contracts/src/lib/schwab-dfg-mfe-context.contract';
import { Observable } from 'rxjs';
import { first, map } from 'rxjs/operators';
import { SchwabDfgDashboardResponseModel } from '../shared/models/schwab-dfg-dashboard-response.model';
import { SchwabDfgOnboarding } from '../shared/models/schwab-dfg-onboarding.model';
import { SchwabDfgCacheHeaderConstants } from '../shared/schwab-dfg-cache-constants';
import { SchwabDfgConstants } from '../shared/schwab-dfg-constants';
import { SchwabDfgGatewayService } from '../shared/services/gateway-service/schwab-dfg-gateway.service';
import { SchwabDfgDashboardCardData, SchwabDfgDashboardModel } from './models/schwab-dfg-dashboard.model';

@Injectable()
export class SchwabDfgDashboardComponentmodelService {

constructor(public gatewayService: SchwabDfgGatewayService, private context: SchwabDfgMfeContextContract) { }

public createDashBoardModel(myRetirementProgressData: SchwabDfgMyRetirementModel): Observable<SchwabDfgDashboardModel> {
if (!myRetirementProgressData) {
myRetirementProgressData = {
isRetirementProgressEnabled: false,
isAdviceAllowed: false,
isIncreaseContributionAllowed: false,
mrpIncomeReplacement: null,
mrpUpdatedDate: null,
};
}
const configDataRequest = {serviceName: 'dfgOnboardingBff', method: 'GET', data: '', endpoint: '/dashboard'};
return this.gatewayService.executeService(configDataRequest.serviceName, configDataRequest.method,
configDataRequest.data, configDataRequest.endpoint,
{ 'no-cache': '1', 'Schwab-Retirement-Progress-Supression': String(myRetirementProgressData.isRetirementProgressEnabled) }).pipe(
map((response) => {
this.setAccessSettings(response.body);
return this.ModellingDashBoardData(response.body, myRetirementProgressData);
}), first());
}

public createOnboardingModel(): Observable<SchwabDfgOnboarding> {
const configDataRequest = {serviceName: 'dfgOnboardingBff', method: 'GET', data: '', endpoint: ''};
const endpoint = '';
return this.gatewayService.executeService(configDataRequest.serviceName, configDataRequest.method
, configDataRequest.data, endpoint, SchwabDfgCacheHeaderConstants.NoCacheHeader).pipe(
map((response) => {
return this.ModellingOnboardingData(response.body);
}), first());
}

private ModellingOnboardingData(data: SchwabDfgOnboarding): SchwabDfgOnboarding {
if (data === undefined) {
const onboarding: SchwabDfgOnboarding = {
maritalStatus: '',
numberOfDependents: null,
householdIncome: null,
financialWellness: '',
};
return onboarding;
}

return data;
}

private setAccessSettings(data: SchwabDfgDashboardResponseModel) {
this.context.isFullAccess.next(data.isEnabled);
}

private ModellingDashBoardData(data: SchwabDfgDashboardResponseModel,
myRetirementProgressData: SchwabDfgMyRetirementModel): SchwabDfgDashboardModel {
const dfgDashboard: SchwabDfgDashboardModel = new SchwabDfgDashboardModel();
const arraydashboard: SchwabDfgDashboardCardData[] = [];
const items = data.cards.length;

for (let i = 0; i <= items - 1; i++) {
const parseData: SchwabDfgDashboardCardData = new SchwabDfgDashboardCardData();
parseData.card = {...data.cards[i]};
parseData.dashboard = {...data.dashboardData.find((x) => x.moduleName === parseData.card.title)};
parseData.textFields = data.textFields;

if (parseData.dashboard &&
parseData.dashboard.moduleCode &&
parseData.dashboard.moduleCode === SchwabDfgConstants.RetirementModuleCode.toUpperCase() &&
myRetirementProgressData.isRetirementProgressEnabled) {
parseData.dashboard.isProgressSuppressionEnabled = myRetirementProgressData.isRetirementProgressEnabled;
parseData.dashboard.goalProgressPercentage = myRetirementProgressData.mrpIncomeReplacement;
parseData.dashboard.currentSavingsAsOfDate = myRetirementProgressData.mrpUpdatedDate;
}
arraydashboard.push(parseData);
}

dfgDashboard.dashboardCardData = arraydashboard;
dfgDashboard.headingText = data.textFields.find((x) => x.id === 'heading').displayValue;
dfgDashboard.subHeadingText = data.textFields.find((x) => x.id === 'subHeading').displayValue;
dfgDashboard.speakWithFinancialCoachText = data.textFields.find((x) => x.id === 'speakWithFinancialCoach').displayValue;
dfgDashboard.getComprehensiveFinancialPlanText = data.textFields.find((x) => x.id === 'getComprehensiveFinancialPlan').displayValue;
dfgDashboard.updateYourInformationText = data.textFields.find((x) => x.id === 'updateYourInformation').displayValue;
dfgDashboard.arrowImage = data.images.find((x) => x.id === 'imageArrow').filePath;
dfgDashboard.images = data.images;
dfgDashboard.personalizeButton = (data.buttons.filter((x) => x.id.includes('Button')))[0].displayValue;
dfgDashboard.updateButton = (data.buttons.filter((x) => x.id.includes('Link')))[0].displayValue;
dfgDashboard.backGroundImage = data.images.find((x) => x.id === 'dashboardbackground').filePath;
dfgDashboard.obPopupModal = data.modals.find((x) => x.id === 'updateModal');
dfgDashboard.coachingModal = data.modals.find((x) => x.id === 'coachingModal');
dfgDashboard.isEnabled = data.isEnabled;
return dfgDashboard;
}
}

SchwabDfgDashboardComponentmodelService should execute service and set access settings in configDataRequest FAILED
TypeError: service.configDataRequest is not a function
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:88:37)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:20)
Chrome 126.0.0 (Windows 10.0.0): Executed 2 of 440 (1 FAILED) (0 secs / 0.032 secs)
Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should execute service and set access settings in configDataRequest FAILED
TypeError: service.configDataRequest is not a function
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:88:37)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:2Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should create onboarding model and return ModellingOnboardingData FAILED
Expected spy executeService to have been called with [ 'dfgOnboardingBff', 'GET', '', '', Object({ no-cache: '1' }) ] but it was never called.
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:102:47)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
Chrome 126.0.0 (Windows 10.0.0): Executed 3 of 440 (2 FAILED) (0 secs / 0.036 secs)
Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should create onboarding model and return ModellingOnboardingData FAILED
Expected spy executeService to have been called with [ 'dfgOnboardingBff', 'GET', '', '', Object({ no-cache: '1' }) ] but it was never called.
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:102:47)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:5Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should model dashboard data correctly FAILED
TypeError: Cannot read properties of undefined (reading 'displayValue')
at SchwabDfgDashboardComponentmodelService.ModellingDashBoardData (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.ts?:102:101)
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:124:55)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:20)
Chrome 126.0.0 (Windows 10.0.0): Executed 7 of 440 (3 FAILED) (0 secs / 0.052 secs)
Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should model dashboard data correctly FAILED
TypeError: Cannot read properties of undefined (reading 'displayValue')
at SchwabDfgDashboardComponentmodelService.ModellingDashBoardData (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.ts?:102:101)
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:124:55)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:2Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should handle retirement progress suppression in ModellingDashBoardData FAILED
TypeError: Cannot read properties of undefined (reading 'displayValue')
at SchwabDfgDashboardComponentmodelService.ModellingDashBoardData (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.ts?:102:101)
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:130:55)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:20)
Chrome 126.0.0 (Windows 10.0.0): Executed 8 of 440 (4 FAILED) (0 secs / 0.056 secs)
Chrome 126.0.0 (Windows 10.0.0) SchwabDfgDashboardComponentmodelService should handle retirement progress suppression in ModellingDashBoardData FAILED
TypeError: Cannot read properties of undefined (reading 'displayValue')
at SchwabDfgDashboardComponentmodelService.ModellingDashBoardData (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.ts?:102:101)
at Object.eval (webpack:///./src/lib/dashboard/schwab-dfg-dashboard.component-model.service.spec.ts?:130:55)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:390:26)
at ProxyZoneSpec.onInvoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:288:39)
at ZoneDelegate.invoke (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:389:52)
at Zone.run (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone.js?:149:43)
at runInTestZone (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:509:34)
at Object.eval (webpack:///C:/git/digitalfinancialguide.management.mfe/node_modules/zone.js/dist/zone-testing.js?:524:2Chrome 126.0.0 (Windows 10.0.0): Executed 52 of 440 (4 FAILED) (0 secs / 22.372 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 53 of 440 (4 FAILED) (0 secs / 23.032 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 54 of 440 (4 FAILED) (0 secs / 23.772 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 113 of 440 (4 FAILED) (skipped 10) (0 secs / 46.003 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 114 of 440 (4 FAILED) (skipped 10) (0 secs / 46.105 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 115 of 440 (4 FAILED) (skipped 10) (0 secs / 46.206 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 116 of 440 (4 FAILED) (skipped 10) (0 secs / 46.307 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 118 of 440 (4 FAILED) (skipped 10) (0 secs / 46.521 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 119 of 440 (4 FAILED) (skipped 10) (0 secs / 46.643 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 121 of 440 (4 FAILED) (skipped 10) (0 secs / 46.756 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 123 of 440 (4 FAILED) (skipped 10) (0 secs / 46.996 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 124 of 440 (4 FAILED) (skipped 10) (0 secs / 47.168 secs)
04 08 2024 18:18:40.119:WARN [web-server]: 404: /url
Chrome 126.0.0 (Windows 10.0.0): Executed 126 of 440 (4 FAILED) (skipped 10) (0 secs / 47.445 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 128 of 440 (4 FAILED) (skipped 10) (0 secs / 47.664 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 129 of 440 (4 FAILED) (skipped 10) (0 secs / 47.775 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 131 of 440 (4 FAILED) (skipped 10) (0 secs / 48.061 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 132 of 440 (4 FAILED) (skipped 10) (0 secs / 48.164 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 133 of 440 (4 FAILED) (skipped 10) (0 secs / 48.26 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 170 of 440 (4 FAILED) (skipped 10) (0 secs / 1 min 9.318 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 222 of 440 (4 FAILED) (skipped 10) (0 secs / 1 min 10.484 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 223 of 440 (4 FAILED) (skipped 10) (0 secs / 1 min 10.522 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 224 of 440 (4 FAILED) (skipped 10) (0 secs / 1 min 10.565 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 244 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.267 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 245 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.309 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 246 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.361 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 247 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.411 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 248 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.433 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 249 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.473 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 250 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.516 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 251 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.56 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 252 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.591 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 251 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.56 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 252 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.591 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 251 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.56 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 252 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.591 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 252 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.591 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 252 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.591 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 253 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.627 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 254 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.66 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 255 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.695 secs)
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
LOG: 'no data returned from getTrackingContent. Question: 8 Module: 3'
Chrome 126.0.0 (Windows 10.0.0): Executed 255 of 440 (4 FAILED) (skipped 13) (0 secs / 1 min 22.695 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 319 of 440 (4 FAILED) (skipped 14) (0 secs / 1 min 46.547 secs)
04 08 2024 18:19:40.217:WARN [web-server]: 404: /assets/images/emergency-savings/icon-arrow-blue.svg
Chrome 126.0.0 (Windows 10.0.0): Executed 320 of 440 (4 FAILED) (skipped 14) (0 secs / 1 min 47.361 secs)
04 08 2024 18:19:40.985:WARN [web-server]: 404: /assets/images/emergency-savings/icon-student-cap.svg
LOG: 'head node not found!'
Chrome 126.0.0 (Windows 10.0.0): Executed 402 of 440 (4 FAILED) (skipped 17) (0 secs / 1 min 51.055 secs)
Chrome 126.0.0 (Windows 10.0.0): Executed 422 of 440 (4 FAILED) (skipped 18) (1 min 51.194 secs / 1 min 51.061 secs)



     
 
what is notes.io
 

Notes.io is a web-based application for taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000 notes created and continuing...

With notes.io;

  • * You can take a note from anywhere and any device with internet connection.
  • * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
  • * You can quickly share your contents without website, blog and e-mail.
  • * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
  • * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.

Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.

Easy: Notes.io doesn’t require installation. Just write and share note!

Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )

Free: Notes.io works for 12 years and has been free since the day it was started.


You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;


Email: [email protected]

Twitter: http://twitter.com/notesio

Instagram: http://instagram.com/notes.io

Facebook: http://facebook.com/notesio



Regards;
Notes.io Team

     
 
Shortened Note Link
 
 
Looding Image
 
     
 
Long File
 
 

For written notes was greater than 18KB Unable to shorten.

To be smaller than 18KB, please organize your notes, or sign in.