0
ich einen Code haben, wo es zwei Felder mit gleichen Eingangs Namen wie untenWie Unittest zwei Eingangstextfelder mit dem gleichen Namen in AngularJS
gezeigt<input ng-if="max_length == 5" type="text" name="zipcode" value="" ng-model="store_zip.zipcode" ng-pattern="/^[0-9]*$/" ng-maxlength="max_length" required>
<input ng-if="max_length == 7" type="text" name="zipcode" value="" ng-model="store_zip.zipcode" ng-pattern="/^[a-zA-Z0-9]*$/" ng-maxlength="max_length" required>
Wie Angular JS Einheit Testcase für diese schreiben?
Mein Code unten sieht aus wie etwas, aber es funktioniert nicht und es wirft eine Fehlermeldung, SetView
Wert nicht definiert ist
it('with a Invalid ZipCode -75678', function()
{
form.zipcode.$setViewValue('75678');
$scope.$digest();
expect(form.zipcode.$valid).toBe(true);
expect(createsiteform.zipcode.$error.maxlength).toBe(undefined);
expect(form.zipcode.$error.pattern).toBe(true);
});
Haben Sie die 'max_length'-Scope-Variable auf 5 oder 7 festgelegt? Ng-if entfernt das Element aus dem DOM, wenn der Ausdruck falsch ist, wodurch 'form.zipcode' undefiniert werden würde. –
Wie man max_length ist 5 über UnitTesting Skript? Ist das möglich? – Shan
Ich denke, Sie könnten es einfach während der Testeinrichtung mit '$ scope.max_length = 5' setzen. –