test(menu): add test that reproduces issue with multiple menus and navbar toggles

This commit is contained in:
Brandy Carney
2016-02-19 14:47:08 -05:00
parent 6b9e59d0d0
commit 5e1eeff40d
4 changed files with 149 additions and 0 deletions

View File

@ -0,0 +1,51 @@
import {App, Page, IonicApp, MenuController} from '../../../../../ionic/ionic';
@Page({
templateUrl: 'page1.html'
})
class Page1 {
}
@Page({
templateUrl: 'page2.html'
})
class Page2 {
}
@App({
templateUrl: 'main.html'
})
class E2EApp {
rootPage;
activeMenu: string;
constructor(app: IonicApp, menu: MenuController) {
this.app = app;
this.menu = menu;
this.page1 = Page1;
this.page2 = Page2;
this.rootPage = Page1;
this.menu1Active();
}
openPage(p) {
// Get the <ion-nav> by id
let nav = this.app.getComponent('nav');
nav.setRoot(p);
}
menu1Active() {
this.activeMenu = 'menu1';
this.menu.enable(true, 'menu1');
this.menu.enable(false, 'menu2');
}
menu2Active() {
this.activeMenu = 'menu2';
this.menu.enable(false, 'menu1');
this.menu.enable(true, 'menu2');
}
}

View File

@ -0,0 +1,52 @@
<ion-menu [content]="content" id="menu1">
<ion-toolbar secondary>
<ion-title>Menu 1</ion-title>
</ion-toolbar>
<ion-content>
<ion-list>
<button ion-item menuClose (click)="menu1Active()">Make Menu 1 Active</button>
<button ion-item menuClose (click)="menu2Active()">Make Menu 2 Active</button>
<button ion-item menuClose (click)="openPage(page1)">
Page 1
</button>
<button ion-item menuClose (click)="openPage(page2)">
Page 2
</button>
<button ion-item menuClose detail-none>
Close Menu 1
</button>
</ion-list>
</ion-content>
</ion-menu>
<ion-menu [content]="content" id="menu2">
<ion-toolbar danger>
<ion-title>Menu 2</ion-title>
</ion-toolbar>
<ion-content>
<ion-list>
<button ion-item menuClose (click)="menu1Active()">Make Menu 1 Active</button>
<button ion-item menuClose (click)="menu2Active()">Make Menu 2 Active</button>
<button ion-item menuClose (click)="openPage(page1)">
Page 1
</button>
<button ion-item menuClose (click)="openPage(page2)">
Page 2
</button>
<button ion-item menuClose detail-none>
Close Menu 2
</button>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav id="nav" [root]="rootPage" #content swipe-back-enabled="false"></ion-nav>

View File

@ -0,0 +1,23 @@
<ion-navbar *navbar>
<button [menuToggle]="activeMenu">
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>
Multiple Menus
</ion-title>
</ion-navbar>
<ion-content padding>
<h3> Page 1 </h3>
<h4>Active Menu: {{ activeMenu }}</h4>
<p>
<button [menuToggle]="activeMenu">Toggle Menu</button>
</p>
<p>This page has two left menus, but only one is active at a time.</p>
</ion-content>

View File

@ -0,0 +1,23 @@
<ion-navbar *navbar>
<button [menuToggle]="activeMenu">
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>
Multiple Menus
</ion-title>
</ion-navbar>
<ion-content padding>
<h3> Page 2 </h3>
<h4>Active Menu: {{ activeMenu }}</h4>
<p>
<button [menuToggle]="activeMenu">Toggle Menu</button>
</p>
<p>This page has two left menus, but only one is active at a time.</p>
</ion-content>