我想对我的函数进行单元测试,该函数基本上是从一组参数(TypeScript 代码)构建一个可观察的数组:
private BuildObservables(parameters: Parameter[]) {
var observables = {};
for (var parameterName in parameters) {
var p = parameters[parameterName];
// Build observable
observables[parameterName] = ko.observable(p.Value);
// Attach validation
if (p.IsRequired) {
observables[parameterName].extend({ required: true });
}
}
return observables;
}
我的测试如下所示:
var parameters = [];
// new Parameter(int value, bool isRequired)
parameters["Param1"] = new Parameter("123", true);
parameters["Param2"] = new Parameter("456", false);
var viewModel = BuildObservables(parameters);
ok(viewModel["Param1"] != null);
ok(viewModel["Param2"] != null);
如果第一个参数isRequired
设置为true
,如何检查是否应用了扩展(验证)(BuildObservables 中的“附加验证”部分)?
编辑:
在另一个功能中,我正在附加订阅者,但我不知道如何测试它们是否正确附加。