でもその場合は型チェックなんて必要ないだろ
to_s や __str__ を持ってるか否かなんだから、いわゆる「型」の話じゃない
そしてメソッドの有無も、わざわざチェックしなくても無かったら例外が出る

ということを踏まえて、どんなテストケースが増えるんだ?