mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-11-06 22:29:44 +08:00
Basic NavController working with demo
This commit is contained in:
@ -1,27 +1,41 @@
|
||||
describe('NavController', function() {
|
||||
var ctrl;
|
||||
var ctrl, navBarEl, contentEl;
|
||||
|
||||
var content = function(title) {
|
||||
return {
|
||||
el: document.createElement('div'),
|
||||
title: title,
|
||||
detach: function() {
|
||||
this.el.parentNode && this.el.parentNode.removeChild(this.el);
|
||||
},
|
||||
attach: function() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
beforeEach(function() {
|
||||
navBarEl = document.createElement('div');
|
||||
contentEl = document.createElement('div');
|
||||
|
||||
ctrl = new NavController({
|
||||
navBar: new NavBar()
|
||||
navBar: new NavBar({el: navBarEl }),
|
||||
content: { el: contentEl }
|
||||
});
|
||||
});
|
||||
|
||||
it('Should load controllers', function() {
|
||||
ctrl = new NavController({
|
||||
navBar: new NavBar({el: navBarEl }),
|
||||
content: { el: contentEl },
|
||||
controllers: [{}]
|
||||
});
|
||||
expect(ctrl.getControllers().length).toEqual(1);
|
||||
});
|
||||
|
||||
it('Should push controller', function() {
|
||||
ctrl.push({
|
||||
title: 'Page 1'
|
||||
});
|
||||
ctrl.push(content('Page 1'));
|
||||
expect(ctrl.getControllers().length).toEqual(1);
|
||||
ctrl.push({
|
||||
title: 'Page 2'
|
||||
});
|
||||
ctrl.push(content('Page 2'));
|
||||
expect(ctrl.getControllers().length).toEqual(2);
|
||||
var last = ctrl.pop();
|
||||
expect(ctrl.getControllers().length).toEqual(1);
|
||||
@ -30,19 +44,17 @@ describe('NavController', function() {
|
||||
|
||||
it('Should change top view controller', function() {
|
||||
expect(ctrl.getTopController()).toBe(undefined);
|
||||
var c1 = {
|
||||
title: 'Page 1'
|
||||
};
|
||||
var c2 = {
|
||||
title: 'Page 2'
|
||||
};
|
||||
var c1 = content('Page 1');
|
||||
var c2 = content('Page 2');
|
||||
ctrl.push(c1);
|
||||
expect(ctrl.getTopController()).toEqual(c1);
|
||||
ctrl.push(c2);
|
||||
expect(ctrl.getTopController()).toEqual(c2);
|
||||
ctrl.pop();
|
||||
expect(ctrl.getTopController()).toEqual(c1);
|
||||
|
||||
// Make sure we can't pop the first one off
|
||||
ctrl.pop();
|
||||
expect(ctrl.getTopController()).toEqual(undefined);
|
||||
expect(ctrl.getTopController()).toEqual(c1);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user