我有一个代码,其中有两个字段具有相同的输入名称,如下所示
<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>
如何为此编写Angular JS Unit TestCase?
我的下面的代码看起来像这样,但它不起作用,它会抛出一条错误消息,说SetView
值未定义
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);
});
答案 0 :(得分:0)
根据Nikoj的评论,
我发现表达式值解决问题的设置。在我的情况下,max_length是表达式
$scope.$apply('max_length=5');