juice-shop

Форк
0
/
address-select.component.spec.ts 
89 строк · 3.3 Кб
1
/*
2
 * Copyright (c) 2014-2024 Bjoern Kimminich & the OWASP Juice Shop contributors.
3
 * SPDX-License-Identifier: MIT
4
 */
5

6
import { TranslateModule, TranslateService } from '@ngx-translate/core'
7
import { HttpClientTestingModule } from '@angular/common/http/testing'
8
import { MatCardModule } from '@angular/material/card'
9
import { MatFormFieldModule } from '@angular/material/form-field'
10
import { type ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'
11
import { MatInputModule } from '@angular/material/input'
12
import { ReactiveFormsModule } from '@angular/forms'
13
import { BrowserAnimationsModule } from '@angular/platform-browser/animations'
14

15
import { MatTableModule } from '@angular/material/table'
16
import { MatExpansionModule } from '@angular/material/expansion'
17
import { MatDividerModule } from '@angular/material/divider'
18
import { MatRadioModule } from '@angular/material/radio'
19
import { MatDialogModule } from '@angular/material/dialog'
20
import { AddressComponent } from '../address/address.component'
21
import { AddressSelectComponent } from './address-select.component'
22
import { RouterTestingModule } from '@angular/router/testing'
23
import { DeliveryMethodComponent } from '../delivery-method/delivery-method.component'
24
import { MatIconModule } from '@angular/material/icon'
25
import { MatTooltipModule } from '@angular/material/tooltip'
26
import { MatCheckboxModule } from '@angular/material/checkbox'
27
import { EventEmitter } from '@angular/core'
28
import { of } from 'rxjs'
29
import { MatSnackBar } from '@angular/material/snack-bar'
30

31
describe('AddressSelectComponent', () => {
32
  let component: AddressSelectComponent
33
  let fixture: ComponentFixture<AddressSelectComponent>
34
  let snackBar: any
35
  let translateService
36

37
  beforeEach(waitForAsync(() => {
38
    translateService = jasmine.createSpyObj('TranslateService', ['get'])
39
    translateService.get.and.returnValue(of({}))
40
    translateService.onLangChange = new EventEmitter()
41
    translateService.onTranslationChange = new EventEmitter()
42
    translateService.onDefaultLangChange = new EventEmitter()
43
    snackBar = jasmine.createSpyObj('MatSnackBar', ['open'])
44
    snackBar.open.and.returnValue(null)
45

46
    TestBed.configureTestingModule({
47
      imports: [
48
        RouterTestingModule.withRoutes([
49
          { path: 'delivery-method', component: DeliveryMethodComponent }
50
        ]),
51
        TranslateModule.forRoot(),
52
        HttpClientTestingModule,
53
        ReactiveFormsModule,
54

55
        BrowserAnimationsModule,
56
        MatCardModule,
57
        MatTableModule,
58
        MatFormFieldModule,
59
        MatInputModule,
60
        MatExpansionModule,
61
        MatDividerModule,
62
        MatRadioModule,
63
        MatDialogModule,
64
        MatIconModule,
65
        MatTooltipModule,
66
        MatCheckboxModule
67
      ],
68
      declarations: [AddressSelectComponent, AddressComponent, DeliveryMethodComponent],
69
      providers: [{ provide: TranslateService, useValue: translateService },
70
        { provide: MatSnackBar, useValue: snackBar }]
71
    })
72
      .compileComponents()
73
  }))
74

75
  beforeEach(() => {
76
    fixture = TestBed.createComponent(AddressSelectComponent)
77
    component = fixture.componentInstance
78
    fixture.detectChanges()
79
  })
80

81
  it('should create', () => {
82
    expect(component).toBeTruthy()
83
  })
84

85
  it('should store address id on calling getMessage', () => {
86
    component.getMessage(1)
87
    expect(component.addressId).toBe(1)
88
  })
89
})
90

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.