我创建了一个假的服务器,最后想做两件事:
这是这样的:
server.respondWith("POST", serverUri, [ 200, {"Content-Type": "application/text"}, "Answer from fake server" ]); // f1
server.respondWith(function(data) { // f2
try {
var dataSentToServer = data.requestBody;
ok(dataToRegister === dataSentToServer, testComment);
} catch (e) {
console.error(e);
}
}
);
但是在测试开始时我不想让它回应。所以我只是离开了f1。 但在一些声明之后,我希望服务器调用f1和f2。只是添加f1行现在不起作用,因为不再调用f2。好像f1会覆盖f2。我也需要重新声明f2。
是否有可能向已存在的respondWith()函数添加行为?
答案 0 :(得分:0)
这与我的假服务器测试类似。你必须留下一个函数respondWith并写入所有数据逻辑和服务器的答案。
server.respondWith(method, model,
(function() {
var answer = [];
if (model.attributes.car_model == "") {
answer = [
404,
{ "Content-Type": "application/json" },
'[{"0":"not car selected"}]'
];
} else {
answer = [
200,
{ "Content-Type": "application/json" },
'[{"0":"good query"}]'
];
}
return answer;
})(model));
'model' - 您是来自ajax的数据,在if-else块中验证您的数据并向浏览器发送必要的答案。