test(): update checkbox/select/toggle tests

This commit is contained in:
Adam Bradley
2016-02-14 14:42:42 -06:00
parent 78b1a0cae9
commit 1e0df9249e
9 changed files with 42 additions and 14 deletions

View File

@ -25,7 +25,7 @@ const CHECKBOX_VALUE_ACCESSOR = new Provider(
* *
* <ion-item> * <ion-item>
* <ion-label>Pepperoni</ion-label> * <ion-label>Pepperoni</ion-label>
* <ion-checkbox [(ngModel)]="pepperoni" checked="true"></ion-checkbox> * <ion-checkbox [(ngModel)]="pepperoni"></ion-checkbox>
* </ion-item> * </ion-item>
* *
* <ion-item> * <ion-item>

View File

@ -26,7 +26,7 @@ class E2EApp {
constructor() { constructor() {
this.fruitsForm = new ControlGroup({ this.fruitsForm = new ControlGroup({
"appleCtrl": new Control(), "appleCtrl": new Control(true),
"bananaCtrl": new Control(true), "bananaCtrl": new Control(true),
"cherryCtrl": new Control(false), "cherryCtrl": new Control(false),
"grapeCtrl": new Control(true) "grapeCtrl": new Control(true)

View File

@ -320,10 +320,18 @@ export class Select {
* @private * @private
*/ */
writeValue(val: any) { writeValue(val: any) {
console.debug('select, writeValue', val);
this._values = (Array.isArray(val) ? val : isBlank(val) ? [] : [val]); this._values = (Array.isArray(val) ? val : isBlank(val) ? [] : [val]);
this._updOpts(); this._updOpts();
} }
/**
* @private
*/
ngAfterContentInit() {
this._updOpts();
}
/** /**
* @private * @private
*/ */

View File

@ -5,12 +5,19 @@ import {App, Page} from '../../../../../ionic/ionic';
templateUrl: 'main.html' templateUrl: 'main.html'
}) })
class E2EPage { class E2EPage {
toppings: Array<string>;
carFeatures: Array<string>;
pets: Array<string>;
petOptions: Array<{text: string, value: string}>;
constructor() { constructor() {
this.toppings = ['bacon', 'xcheese'];
this.carFeatures = [];
this.pets = ['cat', 'dog'];
this.petOptions = [ this.petOptions = [
{ text: 'Bird', value: 'bird' }, { text: 'Bird', value: 'bird' },
{ text: 'Cat', value: 'cat', checked: true }, { text: 'Cat', value: 'cat' },
{ text: 'Dog', value: 'dog', checked: true }, { text: 'Dog', value: 'dog' },
{ text: 'Honey Badger', value: 'honeybadger' }, { text: 'Honey Badger', value: 'honeybadger' },
{ text: 'Pig', value: 'pig' }, { text: 'Pig', value: 'pig' },
]; ];
@ -27,6 +34,8 @@ class E2EPage {
template: '<ion-nav [root]="root"></ion-nav>' template: '<ion-nav [root]="root"></ion-nav>'
}) })
class E2EApp { class E2EApp {
root;
constructor() { constructor() {
this.root = E2EPage; this.root = E2EPage;
} }

View File

@ -7,9 +7,9 @@
<ion-item> <ion-item>
<ion-label>Toppings</ion-label> <ion-label>Toppings</ion-label>
<ion-select [(ngModel)]="toppings" multiple="true" cancelText="Nah" okText="Okay!" class="e2eSelectToppings"> <ion-select [(ngModel)]="toppings" multiple="true" cancelText="Nah" okText="Okay!" class="e2eSelectToppings">
<ion-option value="bacon" checked="true">Bacon</ion-option> <ion-option value="bacon">Bacon</ion-option>
<ion-option value="olives">Black Olives</ion-option> <ion-option value="olives">Black Olives</ion-option>
<ion-option value="xcheese" checked="true">Extra Cheese</ion-option> <ion-option value="xcheese">Extra Cheese</ion-option>
<ion-option value="peppers">Green Peppers</ion-option> <ion-option value="peppers">Green Peppers</ion-option>
<ion-option value="mushrooms">Mushrooms</ion-option> <ion-option value="mushrooms">Mushrooms</ion-option>
<ion-option value="onions">Onions</ion-option> <ion-option value="onions">Onions</ion-option>
@ -35,7 +35,7 @@
<ion-item> <ion-item>
<ion-label>Pets</ion-label> <ion-label>Pets</ion-label>
<ion-select [(ngModel)]="pets" multiple> <ion-select [(ngModel)]="pets" multiple>
<ion-option *ngFor="#o of petOptions" [value]="o.value" [checked]="o.checked">{{o.text}}</ion-option> <ion-option *ngFor="#o of petOptions" [value]="o.value">{{o.text}}</ion-option>
</ion-select> </ion-select>
</ion-item> </ion-item>

View File

@ -7,8 +7,19 @@ import {App, Page} from '../../../../../ionic/ionic';
class E2EPage { class E2EPage {
musicAlertOpts; musicAlertOpts;
gender: string; gender: string;
gaming: string;
os: string;
music: string;
month: string;
year: string;
constructor() { constructor() {
this.gaming = '';
this.os = 'win3.1';
this.music = null;
this.month = '12';
this.year = '1994';
this.musicAlertOpts = { this.musicAlertOpts = {
title: '1994 Music', title: '1994 Music',
subTitle: 'Select your favorite' subTitle: 'Select your favorite'

View File

@ -31,7 +31,7 @@
<ion-option value="lunix">Linux</ion-option> <ion-option value="lunix">Linux</ion-option>
<ion-option value="mac7">Mac OS 7</ion-option> <ion-option value="mac7">Mac OS 7</ion-option>
<ion-option value="mac8">Mac OS 8</ion-option> <ion-option value="mac8">Mac OS 8</ion-option>
<ion-option value="win3.1" checked>Windows 3.1</ion-option> <ion-option value="win3.1">Windows 3.1</ion-option>
<ion-option value="win95">Windows 95</ion-option> <ion-option value="win95">Windows 95</ion-option>
<ion-option value="win98">Windows 98</ion-option> <ion-option value="win98">Windows 98</ion-option>
</ion-select> </ion-select>
@ -64,7 +64,7 @@
<ion-option value="09">September</ion-option> <ion-option value="09">September</ion-option>
<ion-option value="10">October</ion-option> <ion-option value="10">October</ion-option>
<ion-option value="11">November</ion-option> <ion-option value="11">November</ion-option>
<ion-option value="12" checked="true">December</ion-option> <ion-option value="12">December</ion-option>
</ion-select> </ion-select>
<ion-select [(ngModel)]="year"> <ion-select [(ngModel)]="year">
<ion-option>1989</ion-option> <ion-option>1989</ion-option>
@ -72,7 +72,7 @@
<ion-option>1991</ion-option> <ion-option>1991</ion-option>
<ion-option>1992</ion-option> <ion-option>1992</ion-option>
<ion-option>1993</ion-option> <ion-option>1993</ion-option>
<ion-option checked="true">1994</ion-option> <ion-option>1994</ion-option>
<ion-option>1995</ion-option> <ion-option>1995</ion-option>
<ion-option>1996</ion-option> <ion-option>1996</ion-option>
<ion-option>1997</ion-option> <ion-option>1997</ion-option>

View File

@ -24,7 +24,7 @@ class E2EApp {
constructor() { constructor() {
this.fruitsForm = new ControlGroup({ this.fruitsForm = new ControlGroup({
"appleCtrl": new Control(), "appleCtrl": new Control(false),
"bananaCtrl": new Control(true), "bananaCtrl": new Control(true),
"cherryCtrl": new Control(false), "cherryCtrl": new Control(false),
"grapeCtrl": new Control(true) "grapeCtrl": new Control(true)
@ -33,8 +33,8 @@ class E2EApp {
this.grapeChecked = true; this.grapeChecked = true;
this.grapeDisabled = true; this.grapeDisabled = true;
this.kiwiModel = false; this.kiwiModel = true;
this.strawberryModel = true; this.strawberryModel = false;
} }
toggleGrapeChecked() { toggleGrapeChecked() {

View File

@ -31,7 +31,7 @@ const TOGGLE_VALUE_ACCESSOR = new Provider(
* *
* <ion-item> * <ion-item>
* <ion-label>Pepperoni</ion-label> * <ion-label>Pepperoni</ion-label>
* <ion-toggle [(ngModel)]="pepperoni" checked="true"></ion-toggle> * <ion-toggle [(ngModel)]="pepperoni"></ion-toggle>
* </ion-item> * </ion-item>
* *
* <ion-item> * <ion-item>