From 79031d3b2afbdc03880f2759f0fb25beff344db2 Mon Sep 17 00:00:00 2001 From: Tim Lancina Date: Thu, 8 Oct 2015 16:19:54 -0500 Subject: [PATCH] NavController insert test --- .../nav/test/nav-controller.spec.ts | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/ionic/components/nav/test/nav-controller.spec.ts b/ionic/components/nav/test/nav-controller.spec.ts index 12ba26bb53..7168a28d89 100644 --- a/ionic/components/nav/test/nav-controller.spec.ts +++ b/ionic/components/nav/test/nav-controller.spec.ts @@ -165,15 +165,31 @@ export function run() { }); + describe("insert", () => { + it('insert page at the specified index', () => { + nav._views = [{}, {}, {}]; + expect(nav._views[2].componentType).toBeUndefined(); + nav.insert(FirstPage, 2); + expect(nav._views[2].componentType).toBe(FirstPage); + }); + it('push page if index >= _views.length', () => { + nav._views = [{}, {}, {}]; + spyOn(nav, 'push').and.callThrough(); + nav.insert(FirstPage, 2); + expect(nav.push).not.toHaveBeenCalled(); + nav.transition = mockTransitionFn; + nav.insert(FirstPage, 4); + expect(nav._views[4].componentType).toBe(FirstPage); + expect(nav.push).toHaveBeenCalled(); + nav.insert(FirstPage, 10); + expect(nav._views[5].componentType).toBe(FirstPage); + expect(nav.push.calls.count()).toBe(2); + }); - - - - - + }); }); }