本文整理匯總了TypeScript中ng2-toastr.ToastModule類的典型用法代碼示例。如果您正苦於以下問題:TypeScript ToastModule類的具體用法?TypeScript ToastModule怎麽用?TypeScript ToastModule使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了ToastModule類的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: describe
describe('RbdTrashPurgeModalComponent', () => {
let component: RbdTrashPurgeModalComponent;
let fixture: ComponentFixture<RbdTrashPurgeModalComponent>;
let httpTesting: HttpTestingController;
configureTestBed({
imports: [
HttpClientTestingModule,
ReactiveFormsModule,
SharedModule,
ToastModule.forRoot(),
RouterTestingModule
],
declarations: [RbdTrashPurgeModalComponent],
providers: [BsModalRef]
});
beforeEach(() => {
fixture = TestBed.createComponent(RbdTrashPurgeModalComponent);
httpTesting = TestBed.get(HttpTestingController);
component = fixture.componentInstance;
});
it('should create', () => {
fixture.detectChanges();
expect(component).toBeTruthy();
});
it(
'should finish ngOnInit',
fakeAsync(() => {
component.poolPermission = new Permission(['read', 'create', 'update', 'delete']);
fixture.detectChanges();
const req = httpTesting.expectOne('api/pool?attrs=pool_name,application_metadata');
req.flush([
{
application_metadata: ['foo'],
pool_name: 'bar'
},
{
application_metadata: ['rbd'],
pool_name: 'baz'
}
]);
tick();
expect(component.pools).toEqual(['baz']);
expect(component.purgeForm).toBeTruthy();
})
);
it('should call ngOnInit without pool permissions', () => {
component.poolPermission = new Permission([]);
component.ngOnInit();
httpTesting.expectOne('api/summary');
httpTesting.verify();
});
describe('should call purge', () => {
let notificationService: NotificationService;
let modalRef: BsModalRef;
let req;
beforeEach(() => {
fixture.detectChanges();
notificationService = TestBed.get(NotificationService);
modalRef = TestBed.get(BsModalRef);
component.purgeForm.patchValue({ poolName: 'foo' });
spyOn(modalRef, 'hide').and.stub();
spyOn(component.purgeForm, 'setErrors').and.stub();
spyOn(notificationService, 'show').and.stub();
component.purge();
req = httpTesting.expectOne('api/block/image/trash/purge/?pool_name=foo');
});
it('with success', () => {
req.flush(null);
expect(component.purgeForm.setErrors).toHaveBeenCalledTimes(0);
expect(component.modalRef.hide).toHaveBeenCalledTimes(1);
});
it('with failure', () => {
req.flush(null, { status: 500, statusText: 'failure' });
expect(component.purgeForm.setErrors).toHaveBeenCalledTimes(1);
expect(component.modalRef.hide).toHaveBeenCalledTimes(0);
});
});
});
示例2: describe
describe('PoolListComponent', () => {
let component: PoolListComponent;
let fixture: ComponentFixture<PoolListComponent>;
let poolService: PoolService;
configureTestBed({
declarations: [PoolListComponent],
imports: [
SharedModule,
ToastModule.forRoot(),
RouterTestingModule,
TabsModule.forRoot(),
HttpClientTestingModule
],
providers: [i18nProviders, PgCategoryService]
});
beforeEach(() => {
fixture = TestBed.createComponent(PoolListComponent);
component = fixture.componentInstance;
component.permissions.pool.read = true;
poolService = TestBed.get(PoolService);
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
describe('pool deletion', () => {
let taskWrapper: TaskWrapperService;
const setSelectedPool = (poolName: string) => {
component.selection.selected = [{ pool_name: poolName }];
component.selection.update();
};
const callDeletion = () => {
component.deletePoolModal();
const deletion: DeletionModalComponent = component.modalRef.content;
deletion.submitActionObservable();
};
const testPoolDeletion = (poolName) => {
setSelectedPool(poolName);
callDeletion();
expect(poolService.delete).toHaveBeenCalledWith(poolName);
expect(taskWrapper.wrapTaskAroundCall).toHaveBeenCalledWith({
task: {
name: 'pool/delete',
metadata: {
pool_name: poolName
}
},
call: undefined // because of stub
});
};
beforeEach(() => {
spyOn(TestBed.get(BsModalService), 'show').and.callFake((deletionClass, config) => {
return {
content: Object.assign(new deletionClass(), config.initialState)
};
});
spyOn(poolService, 'delete').and.stub();
taskWrapper = TestBed.get(TaskWrapperService);
spyOn(taskWrapper, 'wrapTaskAroundCall').and.callThrough();
});
it('should pool deletion with two different pools', () => {
testPoolDeletion('somePoolName');
testPoolDeletion('aDifferentPoolName');
});
});
describe('handling of executing tasks', () => {
let pools: Pool[];
let summaryService: SummaryService;
const addPool = (name) => {
const pool = new Pool(name);
pool.pg_num = 256;
pools.push(pool);
};
const addTask = (name: string, pool: string) => {
const task = new ExecutingTask();
task.name = name;
task.metadata = { pool_name: pool };
summaryService.addRunningTask(task);
};
beforeEach(() => {
summaryService = TestBed.get(SummaryService);
summaryService['summaryDataSource'].next({ executing_tasks: [], finished_tasks: [] });
pools = [];
addPool('a');
addPool('b');
addPool('c');
component.pools = pools;
//.........這裏部分代碼省略.........
示例3: describe
describe('RbdTrashListComponent', () => {
let component: RbdTrashListComponent;
let fixture: ComponentFixture<RbdTrashListComponent>;
let summaryService: SummaryService;
let rbdService: RbdService;
configureTestBed({
declarations: [RbdTrashListComponent],
imports: [SharedModule, HttpClientTestingModule, RouterTestingModule, ToastModule.forRoot()],
providers: [TaskListService, i18nProviders]
});
beforeEach(() => {
fixture = TestBed.createComponent(RbdTrashListComponent);
component = fixture.componentInstance;
summaryService = TestBed.get(SummaryService);
rbdService = TestBed.get(RbdService);
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
it('should load trash images when summary is trigged', () => {
spyOn(rbdService, 'listTrash').and.callThrough();
summaryService['summaryDataSource'].next({ executingTasks: null });
expect(rbdService.listTrash).toHaveBeenCalled();
});
it('should call updateSelection', () => {
const selection = new CdTableSelection();
selection.selected = ['foo'];
selection.update();
expect(component.selection.hasSelection).toBeFalsy();
component.updateSelection(selection);
expect(component.selection.hasSelection).toBeTruthy();
});
describe('handling of executing tasks', () => {
let images: any[];
const addImage = (id) => {
images.push({
id: id
});
};
const addTask = (name: string, image_id: string) => {
const task = new ExecutingTask();
task.name = name;
task.metadata = {
image_id: image_id
};
summaryService.addRunningTask(task);
};
const expectImageTasks = (image: any, executing: string) => {
expect(image.cdExecuting).toEqual(executing);
};
beforeEach(() => {
images = [];
addImage('1');
addImage('2');
component.images = images;
summaryService['summaryDataSource'].next({ executingTasks: [] });
spyOn(rbdService, 'listTrash').and.callFake(() =>
of([{ poool_name: 'rbd', status: 1, value: images }])
);
fixture.detectChanges();
});
it('should gets all images without tasks', () => {
expect(component.images.length).toBe(2);
expect(component.images.every((image) => !image.cdExecuting)).toBeTruthy();
});
it('should show when an existing image is being modified', () => {
addTask('rbd/trash/remove', '1');
addTask('rbd/trash/restore', '2');
expect(component.images.length).toBe(2);
expectImageTasks(component.images[0], 'Deleting');
expectImageTasks(component.images[1], 'Restoring');
});
});
describe('display purge button', () => {
beforeEach(() => {});
it('should show button with delete permission', () => {
component.permission = {
read: true,
create: true,
delete: true,
update: true
};
fixture.detectChanges();
//.........這裏部分代碼省略.........
示例4: describe
describe('PoolEditModeModalComponent', () => {
let component: PoolEditModeModalComponent;
let fixture: ComponentFixture<PoolEditModeModalComponent>;
let notificationService: NotificationService;
let rbdMirroringService: RbdMirroringService;
let formHelper: FormHelper;
configureTestBed({
declarations: [PoolEditModeModalComponent],
imports: [
HttpClientTestingModule,
ReactiveFormsModule,
RouterTestingModule,
SharedModule,
ToastModule.forRoot()
],
providers: [BsModalRef, BsModalService, i18nProviders]
});
beforeEach(() => {
fixture = TestBed.createComponent(PoolEditModeModalComponent);
component = fixture.componentInstance;
component.poolName = 'somePool';
notificationService = TestBed.get(NotificationService);
spyOn(notificationService, 'show').and.stub();
rbdMirroringService = TestBed.get(RbdMirroringService);
formHelper = new FormHelper(component.editModeForm);
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
describe('update pool mode', () => {
beforeEach(() => {
spyOn(component.modalRef, 'hide').and.callThrough();
});
afterEach(() => {
expect(component.modalRef.hide).toHaveBeenCalledTimes(1);
});
it('should call updatePool', () => {
spyOn(rbdMirroringService, 'updatePool').and.callFake(() => of(''));
component.editModeForm.patchValue({ mirrorMode: 'disabled' });
component.update();
expect(rbdMirroringService.updatePool).toHaveBeenCalledWith('somePool', {
mirror_mode: 'disabled'
});
});
});
describe('form validation', () => {
it('should prevent disabling mirroring if peers exist', () => {
component.peerExists = true;
formHelper.expectErrorChange('mirrorMode', 'disabled', 'cannotDisable');
});
});
});
示例5: describe
//.........這裏部分代碼省略.........
}
},
call: undefined // because of stub
});
};
const setUpPoolComponent = () => {
fixture = TestBed.createComponent(PoolFormComponent);
component = fixture.componentInstance;
component.info = {
pool_names: [],
osd_count: OSDS,
is_all_bluestore: true,
bluestore_compression_algorithm: 'snappy',
compression_algorithms: ['snappy'],
compression_modes: ['none', 'passive'],
crush_rules_replicated: [],
crush_rules_erasure: []
};
const ecp1 = new ErasureCodeProfile();
ecp1.name = 'ecp1';
component.ecProfiles = [ecp1];
form = component.form;
formHelper = new FormHelper(form);
};
const routes: Routes = [{ path: '404', component: NotFoundComponent }];
configureTestBed({
declarations: [NotFoundComponent],
imports: [
HttpClientTestingModule,
RouterTestingModule.withRoutes(routes),
ToastModule.forRoot(),
TabsModule.forRoot(),
PoolModule
],
providers: [
ErasureCodeProfileService,
SelectBadgesComponent,
{ provide: ActivatedRoute, useValue: { params: of({ name: 'somePoolName' }) } },
i18nProviders
]
});
beforeEach(() => {
setUpPoolComponent();
poolService = TestBed.get(PoolService);
spyOn(poolService, 'getInfo').and.callFake(() => [component.info]);
ecpService = TestBed.get(ErasureCodeProfileService);
spyOn(ecpService, 'list').and.callFake(() => [component.ecProfiles]);
router = TestBed.get(Router);
spyOn(router, 'navigate').and.stub();
});
it('should create', () => {
expect(component).toBeTruthy();
});
describe('redirect not allowed users', () => {
let poolPermissions: Permission;
let authStorageService: AuthStorageService;
const testForRedirect = (times: number) => {
component.authenticate();
expect(router.navigate).toHaveBeenCalledTimes(times);
示例6: describe
describe('RbdListComponent', () => {
let fixture: ComponentFixture<RbdListComponent>;
let component: RbdListComponent;
let summaryService: SummaryService;
let rbdService: RbdService;
const refresh = (data) => {
summaryService['summaryDataSource'].next(data);
};
configureTestBed({
imports: [
SharedModule,
BsDropdownModule.forRoot(),
TabsModule.forRoot(),
ModalModule.forRoot(),
TooltipModule.forRoot(),
ToastModule.forRoot(),
AlertModule.forRoot(),
ComponentsModule,
RouterTestingModule,
HttpClientTestingModule
],
declarations: [RbdListComponent, RbdDetailsComponent, RbdSnapshotListComponent],
providers: [SummaryService, TaskListService, RbdService]
});
beforeEach(() => {
fixture = TestBed.createComponent(RbdListComponent);
component = fixture.componentInstance;
summaryService = TestBed.get(SummaryService);
rbdService = TestBed.get(RbdService);
// this is needed because summaryService isn't being reset after each test.
summaryService['summaryDataSource'] = new BehaviorSubject(null);
summaryService['summaryData$'] = summaryService['summaryDataSource'].asObservable();
});
it('should create', () => {
expect(component).toBeTruthy();
});
describe('after ngOnInit', () => {
beforeEach(() => {
fixture.detectChanges();
spyOn(rbdService, 'list').and.callThrough();
});
it('should load images on init', () => {
refresh({});
expect(rbdService.list).toHaveBeenCalled();
});
it('should not load images on init because no data', () => {
refresh(undefined);
expect(rbdService.list).not.toHaveBeenCalled();
});
it('should call error function on init when summary service fails', () => {
spyOn(component.table, 'reset');
summaryService['summaryDataSource'].error(undefined);
expect(component.table.reset).toHaveBeenCalled();
expect(component.viewCacheStatusList).toEqual([{ status: ViewCacheStatus.ValueException }]);
});
});
describe('handling of executing tasks', () => {
let images: RbdModel[];
const addImage = (name) => {
const model = new RbdModel();
model.id = '-1';
model.name = name;
model.pool_name = 'rbd';
images.push(model);
};
const addTask = (name: string, image_name: string) => {
const task = new ExecutingTask();
task.name = name;
task.metadata = {
pool_name: 'rbd',
image_name: image_name,
child_pool_name: 'rbd',
child_image_name: 'd',
dest_pool_name: 'rbd',
dest_image_name: 'd'
};
summaryService.addRunningTask(task);
};
const expectImageTasks = (image: RbdModel, executing: string) => {
expect(image.cdExecuting).toEqual(executing);
};
beforeEach(() => {
images = [];
addImage('a');
addImage('b');
addImage('c');
//.........這裏部分代碼省略.........