@dbg-riskit/angular-testing
Version:
25 lines • 4.54 kB
JavaScript
import { MatMenuItem, MatMenuTrigger } from '@angular/material/menu';
import { By } from '@angular/platform-browser';
import { ByUtil } from '../by.util';
import { click } from '../events';
import { LinkDefinition } from './link.definition';
import { Page } from './page.base';
export class LoginMenuPage extends Page {
get menuTrigger() {
return this.debugElement.query(By.directive(MatMenuTrigger));
}
clickMenuTrigger() {
click(this.menuTrigger);
this.waitForMenu();
}
waitForMenu() {
this.detectChanges(500);
}
get loginLink() {
return new LinkDefinition(this, this.debugElement.query(ByUtil.and(By.directive(MatMenuItem), (value) => value.nativeElement.textContent.trim().endsWith('Login'))));
}
get logoutLink() {
return new LinkDefinition(this, this.debugElement.query(ByUtil.and(By.directive(MatMenuItem), (value) => value.nativeElement.textContent.trim().endsWith('Logout'))));
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4ubWVudS5wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGtnL2RiZy1yaXNraXQvYW5ndWxhci10ZXN0aW5nL3NyYy9saWIvZGVmaW5pdGlvbnMvbG9naW4ubWVudS5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxXQUFXLEVBQUUsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFDLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRTdDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDbEMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUVqQyxNQUFNLE9BQU8sYUFBYyxTQUFRLElBQXdCO0lBRXZELElBQVcsV0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU0sZ0JBQWdCO1FBQ25CLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUNuRCxNQUFNLENBQUMsR0FBRyxDQUNOLEVBQUUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQ3pCLENBQUMsS0FBbUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQ25ELE1BQU0sQ0FBQyxHQUFHLENBQ04sRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFDekIsQ0FBQyxLQUFtQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEZWJ1Z0VsZW1lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRNZW51SXRlbSwgTWF0TWVudVRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHtCeX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge0xvZ2luTWVudUNvbXBvbmVudH0gZnJvbSAnQGRiZy1yaXNraXQvYW5ndWxhci1sb2dpbic7XG5pbXBvcnQge0J5VXRpbH0gZnJvbSAnLi4vYnkudXRpbCc7XG5pbXBvcnQge2NsaWNrfSBmcm9tICcuLi9ldmVudHMnO1xuaW1wb3J0IHtMaW5rRGVmaW5pdGlvbn0gZnJvbSAnLi9saW5rLmRlZmluaXRpb24nO1xuaW1wb3J0IHtQYWdlfSBmcm9tICcuL3BhZ2UuYmFzZSc7XG5cbmV4cG9ydCBjbGFzcyBMb2dpbk1lbnVQYWdlIGV4dGVuZHMgUGFnZTxMb2dpbk1lbnVDb21wb25lbnQ+IHtcblxuICAgIHB1YmxpYyBnZXQgbWVudVRyaWdnZXIoKTogRGVidWdFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVidWdFbGVtZW50LnF1ZXJ5KEJ5LmRpcmVjdGl2ZShNYXRNZW51VHJpZ2dlcikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGlja01lbnVUcmlnZ2VyKCk6IHZvaWQge1xuICAgICAgICBjbGljayh0aGlzLm1lbnVUcmlnZ2VyKTtcbiAgICAgICAgdGhpcy53YWl0Rm9yTWVudSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3YWl0Rm9yTWVudSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKDUwMCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBsb2dpbkxpbmsoKTogTGlua0RlZmluaXRpb24ge1xuICAgICAgICByZXR1cm4gbmV3IExpbmtEZWZpbml0aW9uKHRoaXMsIHRoaXMuZGVidWdFbGVtZW50LnF1ZXJ5KFxuICAgICAgICAgICAgQnlVdGlsLmFuZChcbiAgICAgICAgICAgICAgICBCeS5kaXJlY3RpdmUoTWF0TWVudUl0ZW0pLFxuICAgICAgICAgICAgICAgICh2YWx1ZTogRGVidWdFbGVtZW50KSA9PiB2YWx1ZS5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50LnRyaW0oKS5lbmRzV2l0aCgnTG9naW4nKSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxvZ291dExpbmsoKTogTGlua0RlZmluaXRpb24ge1xuICAgICAgICByZXR1cm4gbmV3IExpbmtEZWZpbml0aW9uKHRoaXMsIHRoaXMuZGVidWdFbGVtZW50LnF1ZXJ5KFxuICAgICAgICAgICAgQnlVdGlsLmFuZChcbiAgICAgICAgICAgICAgICBCeS5kaXJlY3RpdmUoTWF0TWVudUl0ZW0pLFxuICAgICAgICAgICAgICAgICh2YWx1ZTogRGVidWdFbGVtZW50KSA9PiB2YWx1ZS5uYXRpdmVFbGVtZW50LnRleHRDb250ZW50LnRyaW0oKS5lbmRzV2l0aCgnTG9nb3V0JykpKSk7XG4gICAgfVxufVxuIl19