Как написать тестовый пример для сервиса translateservice, используя жасмин для angular - PullRequest
0 голосов
/ 04 августа 2020

Я новичок в jasmine и пытаюсь написать модульный тестовый пример с использованием jasmine для моего кода angular. Я столкнулся с проблемой ниже

Ошибка: не удается прочитать свойство 'mobileNum' из undefined

У меня есть написанная служба перевода, и я пытаюсь получить метку из службы перевода и написать для этого тестовый пример . По сути, это единственная часть этикетки, которую я пытаюсь проверить. Не уверен, почему он пытается проверить mobileNum внутри тега ввода. Любая помощь по этому поводу приветствуется.

html:

 <label for="mobileNumber" class="col-form-label col-form-label-lg" id="textformat">
            {{ 'ENTER_YOUR_MOBILE_NUMBER' | translate }}&nbsp;<span class="labelHint">(05XXXXXXXX)</span>
        </label>
        <input type="text" name="mobileNumber" placeholder="05XXXXXXXX" [(ngModel)]="validateUserRequest.mobileNum" only-number maxlength="10" />

spe c:

 it('label should be Enter your mobile number', async(() => {
        const fixture = TestBed.createComponent(LoginForm1Component);
        fixture.detectChanges();
        let injector = getTestBed();
        let translate = injector.get(TranslateService);
        const compiled = fixture.debugElement.nativeElement;
        console.log('compiled',compiled);
        expect(compiled.querySelector('#textFormat label').textContent).toEqual('ENTER_YOUR_MOBILE_NUMBER');
        translate.setTranslation('en', { ENTER_YOUR_MOBILE_NUMBER: 'Enter your mobile number' });
        translate.use('en');
        fixture.detectChanges();
        expect(compiled.querySelector('#textFormat label').textContent).toEqual('Enter your mobile number');
    }));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...