How to test JSON result from Ruby on Rails functional tests?

前端 未结 9 534
暗喜
暗喜 2021-01-29 23:35

How can I assert my Ajax request and test the JSON output from Ruby on Rails functional tests?

9条回答
  •  故里飘歌
    2021-01-30 00:10

    None of the answers provides a nice maintainable way to verify a JSON response. I find this one to be the best:

    https://github.com/ruby-json-schema/json-schema

    It provides a nice implementation for the standard json schema

    You can write a schema like:

    schema = {
        "type"=>"object",
        "required" => ["a"],
        "properties" => {
            "a" => {
                "type" => "integer",
                "default" => 42
            },
            "b" => {
                "type" => "object",
                "properties" => {
                    "x" => {
                        "type" => "integer"
                    }
                }
            }
        }
    }
    

    and use it like: JSON::Validator.validate(schema, { "a" => 5 })

    Best way to verify it against my android client implementation.

提交回复
热议问题