基本データタイプのチェックとして以下のテストを掲載します。以下からのリンクだけでなく、この投稿にも掲載してあります。
boolean integer numeric string array json
dateも入れようかと思いましたが、その他の日付関連のバリデーションとともに掲載します。
以下の掲載で説明が必要な部分は、ブーリアンです。入力値がfalseなのにどうしてtrueを返すのか? データをチェックしているのでなく、データがブーリアンタイプであるかをチェックしている、と考えてください。
それから、配列のテストで、どうして空の[]がrequiredによりエラーとなりますが、jsonの{}はエラーとならないのかは謎です。