chore(forms): rename ngControl to formControlName
This commit is contained in:
@@ -4,7 +4,7 @@ import {fakeAsync, flushMicrotasks, Log, tick,} from '@angular/core/testing';
|
||||
|
||||
import {SpyNgControl, SpyValueAccessor} from '../spies';
|
||||
|
||||
import {FormGroup, FormControl, NgControlName, NgControlGroup, FormGroupDirective, ControlValueAccessor, Validators, NgForm, NgModel, FormControlDirective, NgControl, DefaultValueAccessor, CheckboxControlValueAccessor, SelectControlValueAccessor, Validator} from '@angular/common/src/forms';
|
||||
import {FormGroup, FormControl, FormControlName, NgControlGroup, FormGroupDirective, ControlValueAccessor, Validators, NgForm, NgModel, FormControlDirective, NgControl, DefaultValueAccessor, CheckboxControlValueAccessor, SelectControlValueAccessor, Validator} from '@angular/common/src/forms';
|
||||
|
||||
|
||||
import {selectValueAccessor, composeValidators} from '@angular/common/src/forms/directives/shared';
|
||||
@@ -119,7 +119,7 @@ export function main() {
|
||||
});
|
||||
form.form = formModel;
|
||||
|
||||
loginControlDir = new NgControlName(
|
||||
loginControlDir = new FormControlName(
|
||||
form, [Validators.required], [asyncValidator('expected')], [defaultAccessor]);
|
||||
loginControlDir.name = 'login';
|
||||
loginControlDir.valueAccessor = new DummyControlValueAccessor();
|
||||
@@ -138,7 +138,7 @@ export function main() {
|
||||
|
||||
describe('addControl', () => {
|
||||
it('should throw when no control found', () => {
|
||||
var dir = new NgControlName(form, null, null, [defaultAccessor]);
|
||||
var dir = new FormControlName(form, null, null, [defaultAccessor]);
|
||||
dir.name = 'invalidName';
|
||||
|
||||
expect(() => form.addControl(dir))
|
||||
@@ -146,7 +146,7 @@ export function main() {
|
||||
});
|
||||
|
||||
it('should throw when no value accessor', () => {
|
||||
var dir = new NgControlName(form, null, null, null);
|
||||
var dir = new FormControlName(form, null, null, null);
|
||||
dir.name = 'login';
|
||||
|
||||
expect(() => form.addControl(dir))
|
||||
@@ -274,7 +274,7 @@ export function main() {
|
||||
personControlGroupDir = new NgControlGroup(form, [], []);
|
||||
personControlGroupDir.name = 'person';
|
||||
|
||||
loginControlDir = new NgControlName(personControlGroupDir, null, null, [defaultAccessor]);
|
||||
loginControlDir = new FormControlName(personControlGroupDir, null, null, [defaultAccessor]);
|
||||
loginControlDir.name = 'login';
|
||||
loginControlDir.valueAccessor = new DummyControlValueAccessor();
|
||||
});
|
||||
@@ -440,7 +440,7 @@ export function main() {
|
||||
}));
|
||||
});
|
||||
|
||||
describe('NgControlName', () => {
|
||||
describe('FormControlName', () => {
|
||||
var formModel: any /** TODO #9100 */;
|
||||
var controlNameDir: any /** TODO #9100 */;
|
||||
|
||||
@@ -449,7 +449,7 @@ export function main() {
|
||||
|
||||
var parent = new FormGroupDirective([], []);
|
||||
parent.form = new FormGroup({'name': formModel});
|
||||
controlNameDir = new NgControlName(parent, [], [], [defaultAccessor]);
|
||||
controlNameDir = new FormControlName(parent, [], [], [defaultAccessor]);
|
||||
controlNameDir.name = 'name';
|
||||
});
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import {NgFor, NgIf} from '@angular/common';
|
||||
import {ControlValueAccessor, FORM_DIRECTIVES, FORM_PROVIDERS, FormControl, FormControlDirective, FormGroup, FormGroupDirective, NG_ASYNC_VALIDATORS, NG_VALIDATORS, NgControl, NgForm, NgModel, RadioButtonState, Validator, Validators} from '@angular/common/src/forms';
|
||||
import {ControlValueAccessor, FORM_DIRECTIVES, FORM_PROVIDERS, FormControl, FormGroup, NG_ASYNC_VALIDATORS, NG_VALIDATORS, NgControl, NgForm, NgModel, REACTIVE_FORM_DIRECTIVES, RadioButtonState, Validator, Validators} from '@angular/common/src/forms';
|
||||
import {TestComponentBuilder} from '@angular/compiler/testing';
|
||||
import {ComponentFixture} from '@angular/compiler/testing';
|
||||
import {Component, Directive, EventEmitter, Output} from '@angular/core';
|
||||
@@ -23,7 +23,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -42,7 +42,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -59,7 +59,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': new FormControl('oldValue')});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -82,7 +82,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': new FormControl('oldValue')});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -201,7 +201,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -227,7 +227,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': login});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -252,7 +252,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': login});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -276,7 +276,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="text">
|
||||
<input type="text" formControlName="text">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -300,7 +300,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input ngControl="text">
|
||||
<input formControlName="text">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -323,7 +323,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<textarea ngControl="text"></textarea>
|
||||
<textarea formControlName="text"></textarea>
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -347,7 +347,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="checkbox" ngControl="checkbox">
|
||||
<input type="checkbox" formControlName="checkbox">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -373,7 +373,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="number" ngControl="num">
|
||||
<input type="number" formControlName="num">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -397,7 +397,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="number" ngControl="num" required>
|
||||
<input type="number" formControlName="num" required>
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -428,7 +428,7 @@ export function main() {
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
var form = new FormGroup({'num': new FormControl(10)});
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="number" ngControl="num" [(ngModel)]="data">
|
||||
<input type="number" formControlName="num" [(ngModel)]="data">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -448,8 +448,8 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<form [formGroup]="form">
|
||||
<input type="radio" ngControl="foodChicken" name="food">
|
||||
<input type="radio" ngControl="foodFish" name="food">
|
||||
<input type="radio" formControlName="foodChicken" name="food">
|
||||
<input type="radio" formControlName="foodFish" name="food">
|
||||
</form>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -524,7 +524,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<select ngControl="city">
|
||||
<select formControlName="city">
|
||||
<option value="SF"></option>
|
||||
<option value="NYC"></option>
|
||||
</select>
|
||||
@@ -556,7 +556,7 @@ export function main() {
|
||||
it('with a dynamic list of options',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<select ngControl="city">
|
||||
<select formControlName="city">
|
||||
<option *ngFor="let c of data" [value]="c"></option>
|
||||
</select>
|
||||
</div>`;
|
||||
@@ -795,7 +795,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="name" wrapped-value>
|
||||
<input type="text" formControlName="name" wrapped-value>
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -818,7 +818,7 @@ export function main() {
|
||||
[TestComponentBuilder, AsyncTestCompleter],
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
const t = `<div [formGroup]="form">
|
||||
<my-input ngControl="name"></my-input>
|
||||
<my-input formControlName="name"></my-input>
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -853,9 +853,9 @@ export function main() {
|
||||
});
|
||||
|
||||
const t = `<div [formGroup]="form" login-is-empty-validator>
|
||||
<input type="text" ngControl="login" required>
|
||||
<input type="text" ngControl="min" minlength="3">
|
||||
<input type="text" ngControl="max" maxlength="3">
|
||||
<input type="text" formControlName="login" required>
|
||||
<input type="text" formControlName="min" minlength="3">
|
||||
<input type="text" formControlName="max" maxlength="3">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -897,7 +897,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': new FormControl('')});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login" uniq-login-validator="expected">
|
||||
<input type="text" formControlName="login" uniq-login-validator="expected">
|
||||
</div>`;
|
||||
|
||||
var rootTC: any /** TODO #9100 */;
|
||||
@@ -928,7 +928,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': new FormControl('aa', Validators.required)});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
@@ -953,7 +953,7 @@ export function main() {
|
||||
var form = new FormGroup({'login': control});
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>`;
|
||||
|
||||
var fixture: any /** TODO #9100 */;
|
||||
@@ -992,7 +992,7 @@ export function main() {
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<div ngControlGroup="nested">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>
|
||||
</div>`;
|
||||
|
||||
@@ -1015,7 +1015,7 @@ export function main() {
|
||||
|
||||
const t = `<div [formGroup]="form">
|
||||
<div ngControlGroup="nested">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>
|
||||
</div>`;
|
||||
|
||||
@@ -1038,7 +1038,7 @@ export function main() {
|
||||
var form = new FormGroup({'name': new FormControl('')});
|
||||
|
||||
const t =
|
||||
`<div [formGroup]="form"><input type="text" ngControl="name" [(ngModel)]="name"></div>`;
|
||||
`<div [formGroup]="form"><input type="text" formControlName="name" [(ngModel)]="name"></div>`;
|
||||
|
||||
let fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
@@ -1084,7 +1084,7 @@ export function main() {
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<div ngControlGroup="user">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>
|
||||
</form>`;
|
||||
|
||||
@@ -1137,7 +1137,7 @@ export function main() {
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<div *ngIf="name == 'show'">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" formControlName="login">
|
||||
</div>
|
||||
</form>`;
|
||||
|
||||
@@ -1162,7 +1162,7 @@ export function main() {
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<div *ngIf="name=='show'" ngControlGroup="user">
|
||||
<input type="text" ngControl="login">
|
||||
<input type="text" name="login" ngModel>
|
||||
</div>
|
||||
</form>`;
|
||||
|
||||
@@ -1186,7 +1186,7 @@ export function main() {
|
||||
it('should support ngModel for complex forms',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<input type="text" ngControl="name" [(ngModel)]="name">
|
||||
<input type="text" name="name" [(ngModel)]="name">
|
||||
</form>`;
|
||||
|
||||
let fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
@@ -1262,76 +1262,77 @@ export function main() {
|
||||
}));
|
||||
|
||||
|
||||
it('should support <type=radio>',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<input type="radio" name="food" ngControl="chicken" [(ngModel)]="data['chicken']">
|
||||
<input type="radio" name="food" ngControl="fish" [(ngModel)]="data['fish']">
|
||||
<input type="radio" name="food" ngControl="beef" [(ngModel)]="data['beef']">
|
||||
<input type="radio" name="food" ngControl="pork" [(ngModel)]="data['pork']">
|
||||
// TODO(kara): Fix when re-doing radio buttons
|
||||
xit('should support <type=radio>',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<input type="radio" name="food" [(ngModel)]="data['chicken']">
|
||||
<input type="radio" name="food" [(ngModel)]="data['fish']">
|
||||
<input type="radio" name="food" [(ngModel)]="data['beef']">
|
||||
<input type="radio" name="food" [(ngModel)]="data['pork']">
|
||||
</form>`;
|
||||
|
||||
const fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
const fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
|
||||
fixture.debugElement.componentInstance.data = {
|
||||
'chicken': new RadioButtonState(false, 'chicken'),
|
||||
'fish': new RadioButtonState(true, 'fish'),
|
||||
'beef': new RadioButtonState(false, 'beef'),
|
||||
'pork': new RadioButtonState(true, 'pork')
|
||||
};
|
||||
fixture.detectChanges();
|
||||
tick();
|
||||
fixture.debugElement.componentInstance.data = {
|
||||
'chicken': new RadioButtonState(false, 'chicken'),
|
||||
'fish': new RadioButtonState(true, 'fish'),
|
||||
'beef': new RadioButtonState(false, 'beef'),
|
||||
'pork': new RadioButtonState(true, 'pork')
|
||||
};
|
||||
fixture.detectChanges();
|
||||
tick();
|
||||
|
||||
const input = fixture.debugElement.query(By.css('input'));
|
||||
expect(input.nativeElement.checked).toEqual(false);
|
||||
const input = fixture.debugElement.query(By.css('input'));
|
||||
expect(input.nativeElement.checked).toEqual(false);
|
||||
|
||||
dispatchEvent(input.nativeElement, 'change');
|
||||
tick();
|
||||
dispatchEvent(input.nativeElement, 'change');
|
||||
tick();
|
||||
|
||||
const data = fixture.debugElement.componentInstance.data;
|
||||
const data = fixture.debugElement.componentInstance.data;
|
||||
|
||||
expect(data['chicken']).toEqual(new RadioButtonState(true, 'chicken'));
|
||||
expect(data['fish']).toEqual(new RadioButtonState(false, 'fish'));
|
||||
expect(data['beef']).toEqual(new RadioButtonState(false, 'beef'));
|
||||
expect(data['pork']).toEqual(new RadioButtonState(false, 'pork'));
|
||||
})));
|
||||
expect(data['chicken']).toEqual(new RadioButtonState(true, 'chicken'));
|
||||
expect(data['fish']).toEqual(new RadioButtonState(false, 'fish'));
|
||||
expect(data['beef']).toEqual(new RadioButtonState(false, 'beef'));
|
||||
expect(data['pork']).toEqual(new RadioButtonState(false, 'pork'));
|
||||
})));
|
||||
});
|
||||
|
||||
it('should support multiple named <type=radio> groups',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<input type="radio" name="food" ngControl="chicken" [(ngModel)]="data['chicken']">
|
||||
<input type="radio" name="food" ngControl="fish" [(ngModel)]="data['fish']">
|
||||
<input type="radio" name="drink" ngControl="cola" [(ngModel)]="data['cola']">
|
||||
<input type="radio" name="drink" ngControl="sprite" [(ngModel)]="data['sprite']">
|
||||
xit('should support multiple named <type=radio> groups',
|
||||
fakeAsync(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
|
||||
const t = `<form>
|
||||
<input type="radio" name="food" [(ngModel)]="data['chicken']">
|
||||
<input type="radio" name="food" [(ngModel)]="data['fish']">
|
||||
<input type="radio" name="drink" [(ngModel)]="data['cola']">
|
||||
<input type="radio" name="drink" [(ngModel)]="data['sprite']">
|
||||
</form>`;
|
||||
|
||||
const fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
const fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
|
||||
fixture.debugElement.componentInstance.data = {
|
||||
'chicken': new RadioButtonState(false, 'chicken'),
|
||||
'fish': new RadioButtonState(true, 'fish'),
|
||||
'cola': new RadioButtonState(false, 'cola'),
|
||||
'sprite': new RadioButtonState(true, 'sprite')
|
||||
};
|
||||
fixture.detectChanges();
|
||||
tick();
|
||||
fixture.debugElement.componentInstance.data = {
|
||||
'chicken': new RadioButtonState(false, 'chicken'),
|
||||
'fish': new RadioButtonState(true, 'fish'),
|
||||
'cola': new RadioButtonState(false, 'cola'),
|
||||
'sprite': new RadioButtonState(true, 'sprite')
|
||||
};
|
||||
fixture.detectChanges();
|
||||
tick();
|
||||
|
||||
const input = fixture.debugElement.query(By.css('input'));
|
||||
expect(input.nativeElement.checked).toEqual(false);
|
||||
const input = fixture.debugElement.query(By.css('input'));
|
||||
expect(input.nativeElement.checked).toEqual(false);
|
||||
|
||||
dispatchEvent(input.nativeElement, 'change');
|
||||
tick();
|
||||
dispatchEvent(input.nativeElement, 'change');
|
||||
tick();
|
||||
|
||||
const data = fixture.debugElement.componentInstance.data;
|
||||
const data = fixture.debugElement.componentInstance.data;
|
||||
|
||||
expect(data['chicken']).toEqual(new RadioButtonState(true, 'chicken'));
|
||||
expect(data['fish']).toEqual(new RadioButtonState(false, 'fish'));
|
||||
expect(data['cola']).toEqual(new RadioButtonState(false, 'cola'));
|
||||
expect(data['sprite']).toEqual(new RadioButtonState(true, 'sprite'));
|
||||
})));
|
||||
expect(data['chicken']).toEqual(new RadioButtonState(true, 'chicken'));
|
||||
expect(data['fish']).toEqual(new RadioButtonState(false, 'fish'));
|
||||
expect(data['cola']).toEqual(new RadioButtonState(false, 'cola'));
|
||||
expect(data['sprite']).toEqual(new RadioButtonState(true, 'sprite'));
|
||||
})));
|
||||
|
||||
describe('setting status classes', () => {
|
||||
it('should work with single fields',
|
||||
@@ -1373,7 +1374,8 @@ export function main() {
|
||||
(tcb: TestComponentBuilder, async: AsyncTestCompleter) => {
|
||||
var form = new FormGroup({'name': new FormControl('', Validators.required)});
|
||||
|
||||
const t = `<form [formGroup]="form"><input type="text" ngControl="name"></form>`;
|
||||
const t =
|
||||
`<form [formGroup]="form"><input type="text" formControlName="name"></form>`;
|
||||
|
||||
tcb.overrideTemplate(MyComp8, t).createAsync(MyComp8).then((fixture) => {
|
||||
fixture.debugElement.componentInstance.form = form;
|
||||
@@ -1491,7 +1493,7 @@ export function main() {
|
||||
// from form.control before it was set. This test verifies this bug is
|
||||
// fixed.
|
||||
const t = `<form><div ngControlGroup="x" #x="ngForm">
|
||||
<input type="text" ngControl="test"></div>{{x.valid}}</form>`;
|
||||
<input type="text" name="test" ngModel></div>{{x.valid}}</form>`;
|
||||
let fixture = tcb.overrideTemplate(MyComp8, t).createFakeAsync(MyComp8);
|
||||
tick();
|
||||
fixture.detectChanges();
|
||||
@@ -1583,7 +1585,7 @@ class UniqLoginValidator implements Validator {
|
||||
template: '',
|
||||
directives: [
|
||||
FORM_DIRECTIVES, WrappedValue, MyInput, NgIf, NgFor, LoginIsEmptyValidator, UniqLoginValidator,
|
||||
FormControlDirective, FormGroupDirective
|
||||
REACTIVE_FORM_DIRECTIVES
|
||||
],
|
||||
providers: [FORM_PROVIDERS]
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user