如何在单元测试中在 httpBackend 服务中正确编写 url
how to properly write url in httpBackend service in unit tests
我想模拟 $httpBackend.whenGet
请求。
我可以将完整的 url 写成字符串,但我无法理解我定义查询表达式的最后一部分:"('120' != 1 AND '106' != 5)"
来自控制台的有效请求示例:
http://localhost:9002/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(%27120%27+!%3D+1+AND+%27106%27+!%3D+5)&startIndex=0
如果我在 $httpBackend.whenGET( '/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(%27120%27+!%3D+1+AND+%27106%27+!%3D+5)&startIndex=0' )
、
中将其作为字符串传递
我的单元测试出现意外错误
Error: Unexpected request: GET /api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=('120'+!%3D+1+AND+'106'+!%3D+5)&startIndex=0
我用错误的 queryExpression
格式定义了那个问题。
第一种情况,模拟完整url请求不是那么紧急,我可以在$httpBackend.whenGet
服务中使用RegExp来匹配参数而不需要查询。
第二个是我问的,解决方法很简单,使用 \
转义字符。
所以,结果是:
/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(\'120\'+!%3D+1+AND+\'106\'+!%3D+5)&startIndex=0
我想模拟 $httpBackend.whenGet
请求。
我可以将完整的 url 写成字符串,但我无法理解我定义查询表达式的最后一部分:"('120' != 1 AND '106' != 5)"
来自控制台的有效请求示例:
http://localhost:9002/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(%27120%27+!%3D+1+AND+%27106%27+!%3D+5)&startIndex=0
如果我在 $httpBackend.whenGET( '/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(%27120%27+!%3D+1+AND+%27106%27+!%3D+5)&startIndex=0' )
、
我的单元测试出现意外错误
Error: Unexpected request: GET /api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=('120'+!%3D+1+AND+'106'+!%3D+5)&startIndex=0
我用错误的 queryExpression
格式定义了那个问题。
第一种情况,模拟完整url请求不是那么紧急,我可以在$httpBackend.whenGet
服务中使用RegExp来匹配参数而不需要查询。
第二个是我问的,解决方法很简单,使用 \
转义字符。
所以,结果是:
/api/application/datapage?dataPageType=application.group.datapage.GroupDataPageQuery&pageSize=-1&propertySelection=groupName,groupId&queryExpression=(\'120\'+!%3D+1+AND+\'106\'+!%3D+5)&startIndex=0