From 60695497924e78faa7248420462adc811963a544 Mon Sep 17 00:00:00 2001 From: Ken Sodemann Date: Mon, 11 Dec 2017 14:17:51 -0600 Subject: [PATCH] feat(numeric-input): create e2e test case --- .../angular/e2e/basic-inputs.e2e-spec.ts | 34 +++++++++++++++---- packages/demos/angular/e2e/basic-inputs.po.ts | 13 +++++++ .../basic-inputs-page.component.html | 6 ++-- .../basic-inputs-page.component.ts | 2 +- 4 files changed, 44 insertions(+), 11 deletions(-) diff --git a/packages/demos/angular/e2e/basic-inputs.e2e-spec.ts b/packages/demos/angular/e2e/basic-inputs.e2e-spec.ts index b9fed68a2a..a7b155bc6d 100644 --- a/packages/demos/angular/e2e/basic-inputs.e2e-spec.ts +++ b/packages/demos/angular/e2e/basic-inputs.e2e-spec.ts @@ -1,4 +1,4 @@ -import { ElementFinder, promise } from 'protractor/built'; +import { browser, ElementFinder, promise } from 'protractor/built'; import { BasicInputsPage } from './basic-inputs.po'; @@ -42,6 +42,22 @@ describe('Basic Inputs Page', () => { }); }); + describe('numeric input', () => { + it('should remain type number with modifications', () => { + page.navigateTo(); + const el = page.getIonicNumericInput(); + const inp = page.getIonicNumericInputEditable(); + expect(page.getNumericOutputType()).toEqual('number'); + inp.sendKeys('318'); + expect(page.getNumericOutputType()).toEqual('number'); + inp.clear(); + inp.sendKeys('-0'); + expect(page.getNumericOutputType()).toEqual('number'); + inp.sendKeys('.48859'); + expect(page.getNumericOutputType()).toEqual('number'); + }); + }); + describe('textarea input', () => { it('should display the starting text', () => { page.navigateTo(); @@ -79,9 +95,11 @@ describe('Basic Inputs Page', () => { it('should reflect toggling the value', () => { page.navigateTo(); - const el = page.getIonicCheckbox(); - el.click(); - expect(page.getCheckboxOutput()).toEqual('false'); + return browser.executeScript('window.scrollTo(0, 500);').then(function() { + const el = page.getIonicCheckbox(); + el.click(); + expect(page.getCheckboxOutput()).toEqual('false'); + }); }); }); @@ -94,9 +112,11 @@ describe('Basic Inputs Page', () => { it('should reflect toggling the value', () => { page.navigateTo(); - const el = page.getIonicToggle(); - el.click(); - expect(page.getToggleOutput()).toEqual('true'); + return browser.executeScript('window.scrollTo(0, 500);').then(function() { + const el = page.getIonicToggle(); + el.click(); + expect(page.getToggleOutput()).toEqual('true'); + }); }); }); diff --git a/packages/demos/angular/e2e/basic-inputs.po.ts b/packages/demos/angular/e2e/basic-inputs.po.ts index 54d6eb2849..6a0c433f92 100644 --- a/packages/demos/angular/e2e/basic-inputs.po.ts +++ b/packages/demos/angular/e2e/basic-inputs.po.ts @@ -55,7 +55,20 @@ export class BasicInputsPage { return parent.all(by.css('input')).first(); } + getIonicNumericInput() { + return element(by.id('ionNumericInput')); + } + + getIonicNumericInputEditable() { + const parent = this.getIonicNumericInput(); + return parent.all(by.css('input')).first(); + } + getTextOutput() { return element(by.id('textOutput')).getText(); } + + getNumericOutputType() { + return element(by.id('numericOutputType')).getText(); + } } diff --git a/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.html b/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.html index 05526bb451..db927773bb 100644 --- a/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.html +++ b/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.html @@ -39,17 +39,17 @@ Ionic Numeric Input - +
Value: - {{numberValue}} + {{numericValue}}
Type: - {{typeOf(numberValue)}} + {{typeOf(numericValue)}}
diff --git a/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.ts b/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.ts index fccec8ba2c..6689000a10 100644 --- a/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.ts +++ b/packages/demos/angular/src/app/basic-inputs-page/basic-inputs-page.component.ts @@ -10,7 +10,7 @@ export class BasicInputsPageComponent implements OnInit { datetimeValue = '2017-11-18T14:17:45-06:00'; textareaValue = 'This is the Textarea Input'; textValue = 'This is the Text Input'; - numberValue = 1138; + numericValue = 1138; checkboxValue = true; toggleValue = false;