如何在rails中用rspec测试respond是json格式的数据

小弟最近在给ruby项目写单元测试,用的是rspec遇到个问题想问下
代码如下:

#
# 用户管理
#

class UsersController < ApplicationController
before_filter :monitor_required, :except=>[:destroy]
before_filter :admin_required, :only=>[:destroy, :reset_pwd]
before_filter :get_user, :except=>:index

# 显示所有的管理员
# [GET] /users
# [FILTER] group=[:all,:admin,:configer,:monitor]
# [ORDER] order=column_name
# [PAGE] page = n
# [FULL URL] /users(/index).json?group=all&page=n&order=name
def index
group = params[:group] || "all"
if( group == "all")
@users = User.find(:all, extract_common_query)
@total = User.count
else
@users = User.find_all_by_group(group, extract_common_query)
@total = User.count(:all, :conditions=>["`group` = ?", group])
end
respond_to{|format|
format.json{
render_json_list(@users, @total)
}
format.xml{
render(:xml=>@users.to_xml)
}
}
end



其中extract_common_query()方法是



# 抽取一般JS查询的三个典型参数
# <li>order
# <li>limit
# <li>offset
def extract_common_query
params[:offset] = params[:start]
ecq = {:limit=>25,:offset=>0}.update( params.only(:order,:limit,:offset) )
ecq.symbolize_keys!
end



其中render_json_list()方法是:
 
def render_json_list( data, total = data.size )
render(:text=>"{totalCount:#{total},rows:" + data.to_json + "}", :status => 200)
end



如何用rspec测试出response 是json数据?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值